🏑


  1. November 06, 2026
    1. πŸ”— gildas-lormeau/single-file-cli v2.24.0 release

      SingleFile CLI 2.24.0

      New features

      • New option --load-deferred-content-keep-emulated-screen-size: while loading deferred content, the page is made to believe the screen is as tall as the whole document, and the real size is restored before the page is read. With this option the emulated size is kept until the page has been saved. It helps saving pages that only keep on screen the content scrolled to, e.g. the timelines of x.com, at the cost of saving elements sized from the screen height, e.g. full-screen covers, at the emulated size (gildas-lormeau/SingleFile#2048 by @cheese529).
        single-file https://x.com/i/history/likes likes.html --browser-server http://127.0.0.1:9222 --load-deferred-content-keep-emulated-screen-size=true
        

      CLI fixes and improvements

      • The default value of --accept-header-image starts with image/jxl, like the Accept header of browsers supporting JPEG XL
      • Updated single-file-core to 1.10.0: SVG sprite fragments referenced from CSS url() values and from image attributes are saved on their own instead of the whole sprite, the sandbox attribute of saved frames no longer carries a token Safari rejects nor a duplicated one, and the xmlns attribute of extracted sprite fragments is declared in the XMLNS namespace

      Co-authored by Claude (Claude Code)

    2. πŸ”— New Music Releases Cult of Luna - In the Shadow of Your Shadow rss

      Cult of Luna - a new release is available:

      • 2026-11-06: In the Shadow of Your Shadow (Album)

      Amazon: Canada | Deutschland | France | United Kingdom | United States

      Visit muspy for more information.

    3. πŸ”— New Music Releases Kings of Leon - O My Beloved rss

      Kings of Leon - a new release is available:

      • 2026-11-06: O My Beloved (Album)

      Amazon: Canada | Deutschland | France | United Kingdom | United States

      Visit muspy for more information.

    4. πŸ”— New Music Releases Royal Blood - Dead Company rss

      Royal Blood - a new release is available:

      • 2026-11-06: Dead Company (Album)

      Amazon: Canada | Deutschland | France | United Kingdom | United States

      Visit muspy for more information.

  2. November 05, 2026
    1. πŸ”— pydantic/monty v1.5.0 - 2026-11-05 release

      What's Changed

      New Contributors

      Full Changelog : 1.4.0...v1.5.0

    2. πŸ”— idalib-rs/idalib Release v0.11.1 release

      Features:

      • Add support for applying ida.cfg directives (contributor: @0xdea).
    3. πŸ”— @HexRaysSA@infosec.exchange We’re at [@nullcon](https://bird.makeup/users/nullcon) Berlin πŸ‘‹ mastodon

      We’re at @nullcon Berlin πŸ‘‹

      A few of the Hex-Rays team are around today and tomorrow. If you use IDA, want to, or just want to talk reverse engineering, come say hi.

      Tomorrow Arnau GΓ mez runs a hands-on workshop on binary (de)obfuscation. Details below.

      πŸ—“ Fri 06 November, 11:00–12:30, Workshops track
      πŸ”— http://nullcon.net/talk/hands-on-binary- deobfuscation/

    4. πŸ”— HexRaysSA/plugin-repository commits sync plugin-repository.json rss
      sync plugin-repository.json
      
      No plugin changes detected
      
    5. πŸ”— backnotprop/plannotator v0.28.50 release

      Follow @plannotator on X for updates

      Missed recent releases? Release | Highlights
      ---|---
      v0.28.49 | A checklist for each thread, a pill that shows who gets your reply, a calmer full screen, Inbox replies in T3 Code, --title for review and annotate
      v0.28.48 | Reply attachments that follow the draft, links to any web page on Board cards, instant theme switches, a daily anonymous ping, a faster Inbox
      v0.28.47 | Board lanes, Settings β†’ Rows, a new thread header, a "Make it yours" tour step, Request guided review, Jira links on Board cards
      v0.28.46 | Snooze a thread, Settings β†’ Accounts, long pastes become file tiles, HTML pages on a phone, hide the repository owner
      v0.28.45 | Plannotator Modern theme, a thread panel view, session names in the To picker, thread links open in place, comment on diagram parts
      v0.28.44 | The iPhone keyboard no longer moves the Inbox, pictures stay clear of the option card, What's new over your tailnet
      v0.28.43 | Voice dictation, combine and rename projects, Mark unread, full-screen threads, Q for open questions, search by type
      v0.28.42 | Choose how your Inbox list looks, contents for long documents, link the Inboxes on two computers, clearer search, documents outside the project open from your own machine
      v0.28.40 | Update works with update checks off, the thread bar shows the thread's name, agents before the project in list rows
      v0.28.39 | Reply from full screen, thread names lead the Inbox list, one project per Claude Code session, a redesigned code review sidebar, Call flow as cards
      v0.28.38 | Attach files to a reply in the Inbox, swipe through a question's picture choices, easier-to-read list rows, code on hover in Call Flow and Semantic Changes
      v0.28.37 | DeepSeek Harness support, save plans to Notion, AsciiDoc in annotate, browse the whole repository in code review, Go to File and Go to Definition, Tidy and hand-offs in the Inbox

      What's New in v0.28.50

      The Inbox opens faster, uses less memory and no longer downloads the whole thread list on every agent message. This release also brings session names across the Inbox, initiatives on the Board, earlier comments on a file, global comments on Guided Reviews, and feature dialogs that ask before turning anything on. 37 PRs, 4 from outside contributors, with a first-time contributor.

      Plannotator Inbox

      Faster to open, lighter while it runs

      The Inbox used to load all of its code when it opened: 21.8 MB of scripts, including the guided review reader, diagrams, math and every language's highlighting. It now starts with one script of about 4.5 MB and fetches the main parts when the window goes idle. Diagrams, math and language highlighting load the first time you need them. Every agent message also used to make the window download the whole thread list again, along with your drafts and Tidy's plan. Now the server sends only the rows that changed, your drafts are read when they can have changed, and Tidy's plan when you reach for it.

      These numbers come from headless Chromium on a Mac, with a large generated store (13,800 messages, 220 open threads in the busiest project). Yours will differ.

      | Before | After
      ---|---|---
      Time until the list is on screen | 661 ms | 283 ms
      Tab memory after load | 223 MB | 134 MB
      JavaScript memory after load | 50.4 MB | 19.1 MB
      Network use over 60 agent messages | 20.12 MB | 0.93 MB
      Idle CPU of the tab | 2.2 to 2.5% | 1.0 to 1.2%

      An empty Inbox gains too: the list shows in 238 ms instead of 627 ms, and the tab takes 90 MB instead of 175 MB. On a larger test store (30,000 messages), with a thread open, JavaScript memory now grows about 7 MB over 270 agent messages instead of about 25 MB, and a new check in CI fails if it grows past 14 MB. The idle CPU drop comes from the sidebar's mascot, whose animation no longer makes the browser recalculate styles on every frame.

      Threads and guided reviews open about as quickly as before, and when a thread opens, its code and math are drawn on the first paint, with no flash of plain text. The first Mermaid diagram you open takes a little longer (about 265 ms instead of 212 ms) because its code now loads then. Loading on first use adds one new way to fail: a tab left open across an Inbox update can ask for a file that has gone. When that happens it says "This page was updated. Reload to see this" where that part would show, and the rest of the window keeps working.

      Reported by @navin-moorthy, who saw 1.6 GB on a large store, in #2593. #2604, #2605, #2607, #2613, #2616

      In case you missed them: Mark unread and Archive

      Hover a read thread for Mark unread: it goes back to New, in bold, until you next open it, and nothing is sent to the agent. An archived thread comes back on its own when an agent replies in it.

      Feature dialogs ask first

      Behavior change: the dialogs that introduce the Board and the Checklist no longer turn anything on. Each one offers Turn it on and Not now. Not now, Escape or a click outside changes nothing, and you can still turn the feature on later in Settings β†’ Capabilities. If 0.28.49 turned one on for you, it stays on until you turn it off. #2598

      Session names across the Inbox

      A session's name now shows in the @ picker, in the tooltip on a thread row's agent marks, in Send to another session, and as the author of its messages. Rename a session and its messages follow. Claude Code's names now also come from its transcript, so a bare /rename, --name and a rename from a phone all count. Asked for by @zane668 in #2450. #2591

      Initiatives on the Board

      Initiatives group Board cards. The Board's new Filter menu holds initiatives and projects in one place, and you set a card's initiative from its right- click menu or from the opened card. Deleting an initiative takes one click, with Undo, and its cards stay.

      Type # in the reply box, New message or New card to pick an initiative. A sent tag links to the Board filtered to that initiative, and hovering it, or tapping it once on a phone, previews its cards and threads. Your message also puts the thread's card in that initiative.

      Agents can put a card in an initiative too, through the card tool or plannotator card create &lt;title&gt; --initiative <name>, and delete one when its work is done. Turn the Board on in Settings β†’ Capabilities. #2619, #2630, #2633

      Earlier comments on a file

      When a file comes back in a new version, the comments you already sent on it stay in the comments column, in a dimmed, read-only "Earlier" list under the current ones. On a computer, the comments button counts them. The list starts folded when you have comments of your own on that file and open when you have none. The side-by-side comments column also scrolls now, so a long list is no longer cut off there, in guided reviews included. #2634

      Smaller changes

      • On an iPhone, Reply no longer hides when you tap an option, and the page no longer stays clipped after a rotation. #2628
      • A reply's delivery line now reads "Read by Claude Code, 6:25 PM" when another kind of agent read it, instead of "Delivered to" the agent it was for. #2638
      • A reply from the floating box on an image, film or HTML page now tells the agent which file was on screen. You still see only what you wrote. #2645
      • An agent can snooze a thread when you ask it to, or end the snooze, on this computer or a linked one. #2648
      • With an HTML file in full screen and the comments drawer open, the reply box no longer runs over the drawer's foot. On a phone, "Write the reply" now takes you to the thread's reply box with your words kept. #2657
      • Pressing Done on an action item no longer pulls you away from a note you've gone to. #2668
      • plannotator inbox --help now tells agents they can send a video in attachments. #2649
      • The Mark read tooltips now say "Mark read / quiet", and manual steps say "yourself" instead of "by hand" ("Connect yourself"). #2651, #2614

      Plannotator

      Global comments on Guided Reviews

      Guided Reviews have a Global comment button, in the Inbox and in the review app, for a remark on the whole review rather than a line or a file. Global comments are listed at the top and go first in what your agent receives, under ## Global comments. The review app's "+ General comment" is now "+ Global comment", and its export's ## General section is now ## Global comments, ahead of the files. If adding one fails while the review is busy, your words are kept. #2584, #2622

      Open a guide you wrote elsewhere

      plannotator guide import saves a guide written outside a review, from --guide with --patch, or from --snapshot. The next plannotator review of that repository lists it under Guides, and guide export --id and guide share --id work on it. Built on the prototype by @UberMouse, closing #2589. #2603

      Annotate shows config and data files as they are

      .yaml, .json, .toml, .ini, .csv, .log, .xml and similar files used to go through the Markdown renderer, so a # comment became a heading. Each now shows as its own text in one highlighted code block, and you can select and comment as before. .cfg and .conf stay plain monospace, because the name does not say which syntax is inside, and a file over 128 KB shows without highlighting. By @BenNewman100, closing #2586. #2587

      Print HTML explainers in full

      Print / Save as PDF now prints the HTML document itself, so nothing is cut off, and sibling sections start on new pages with headings kept with their content. The browser's own print menu no longer clips either, but section page breaks need the app's Print action. By @utpalsinghdev, closing #2317. #2580

      Pi: reviews stay open and feedback reaches the right session

      A gated annotation review opened by Pi now stays open when its tab closes or loses its connection. Feedback goes first to the session that opened the review, so an Oh My Pi task subagent no longer receives feedback meant for its parent. By @utpalsinghdev, closing #2553 and #2554. #2581

      Smaller changes

      • Images attached to private GitHub PR descriptions and comments now load in plannotator review, and GitHub credentials stay on the server. By @utpalsinghdev, closing #2328. #2579
      • In a guided review in the Inbox, each file's box now fits its diff, so a 5-line file no longer sits in a tall empty box. #2632
      • Comment boxes keep your words when they close, and bring them back when you reopen the same target: the global comment on an HTML page, a line comment in a code file view, and a comment on an image region. #2611
      • Selecting text again over a comment nested inside another comment now paints correctly instead of failing with no toolbar. #2599
      • The README and the repo's remote guide now say SSH turns remote mode on by itself, WSL2 does not need it, and a published Docker port needs the variable. A VS Code devcontainer needs it only if the browser doesn't open by itself. They also say remote mode listens on every interface with no login, even over an SSH tunnel. #2642, #2646

      Install / Update

      macOS / Linux:

      curl -fsSL https://plannotator.ai/install.sh | bash
      

      Windows:

      irm https://plannotator.ai/install.ps1 | iex
      

      Claude Code Plugin: The install script above also updates the plugin when claude is on your PATH. Otherwise, in a terminal:

      claude plugin marketplace update plannotator
      claude plugin update plannotator@plannotator
      

      Then restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin β†’ Installed β†’ plannotator β†’ Update now.

      Pi:

      pi update npm:@plannotator/pi-extension
      

      OpenCode: Re-run the install script above. It also clears the OpenCode 2 plugin cache.

      What's Changed

      New Contributors

      Contributors

      • @utpalsinghdev fixed printing of HTML explainers in #2580, private GitHub images in #2579, and Pi's gated reviews and feedback routing in #2581.
      • @BenNewman100 reported that config files rendered as Markdown in #2586 and fixed it in #2587.
      • @UberMouse proposed plannotator guide import in #2589 and wrote the prototype that #2603 shipped, with their commit kept.

      Community

      • @navin-moorthy reported the Inbox's memory use on a large store in #2593, and answered follow-up questions about what fills it.
      • @zane668 asked for session names in #2450 and followed up with the places that still showed only the agent. They also reported a blank page after commenting on an attachment in #2594. Looking into it turned up the selection bug fixed in #2599.
      • @instant-agent99 reported both Pi issues, #2553 and #2554.
      • @dougcooper asked for printable explainers in #2317.
      • @mauricedesaxe reported that images in private-repo PR descriptions did not load in #2328.

      Full Changelog : v0.28.49...v0.28.50

    6. πŸ”— OmniNull/OmniWM Canary 20261105-0906 (0d886db9) release

      Automated canary build of main. It is signed and notarized like a release but skips the owner review, so treat it as unstable.

      See the canary guide to install, update, or return to stable. For everyday use, download the latest stable release.

      • Commit: 0d886db9530a
      • Base tag: canary-20261104-0414-41771564178-1

      Changes since canary-20261104-0414-41771564178-1

      • 0d886db Compare settled viewports in the close focus tests
      • 44b0586 Hold the metrics writer open instead of spinning in its test
      • 06109f7 Move the remaining test waits onto real events
      • 9e6bea5 Let tests await the tasks they were waiting for
      • b0447a2 Replace timing waits in tests with real completion
      • 06d8428 Move the focus ring in WindowServer during slides
      • c1806a5 Stop reading window positions while windows slide
      • 9b04524 Start CI's Swift build cache over
      • 178f713 Name every workspace in the Vitreus bar
      • 7d1c389 Bring Vitreus Focus and Pad back to the Desk
      • eccfde5 Split the island table parser
      • dfedbbb Top-align Get Styles and lift example buttons off the window
      • 016fcfe Let an island declare that it draws the System Stats button
      • 3552d15 Fit Niri columns and floated windows to the bar's room
      • 1c4eefc Move a new window before rescanning its app
      • e0979b4 Drag OmniShell utility windows without macOS's child-window lag
      • 59e127e Give every style a gallery preview
      • b342bdd Bring Vitreus up to the shared bar rules
      • 7f3838e Show OmniShell app icons on dark bars and give example buttons a background
      • 7f150a8 Read OmniWM's own focused window on the main thread
      • e3f0d1d Explain Lake's CI widget and note what managed policy skips
      • 1d92e9a Let OmniShell apps ask for program and network permission
      • e018c76 Let hosted app windows move past the top and bottom of the screen
      • 278ddde Document hosted apps and add an approved-provider example
      • a73f6a7 Make CI correctness checks independent of machine load
      • b52f3b8 Keep thin Niri pictures still
      • bdb9f74 Stream resting Niri pictures instead of polling captures
    7. πŸ”— Console.dev newsletter Sponsor: Flox rss

      Flox - Try 80+ agentic AI tools on your own machine. No containers. No dependency conflicts.

      Visit Flox

    8. πŸ”— Console.dev newsletter Osewa rss

      Terminal connectivity protocol.

      What we like: Uses QUIC or a TLS WebSocket to connect to terminal sessions. Acts almost like a proxy between terminal sessions, built on Ghostty’s engine. You can close the client without the server quitting. Every device gets its own key - no passwords.

      What we dislike: Transport-only for now, not a multiplexer. No Windows support. Website animations are annoying.

    9. πŸ”— Console.dev newsletter Vinext rss

      Nextjs on Vite.

      What we like: API-compatible (currently at 94%) alternative runtime for Nextjs, built on Vite. Claims faster builds and smaller client bundles. Migration can be done through a CLI by your agent. Supports most common Nextjs features. Sophisticated caching options.

      What we dislike: Primarily designed for running Nextjs on Cloudflare today, which does work well. Nitro is a non-Cloudflare alternative.

    10. πŸ”— Console.dev newsletter Sponsor: BuildKite rss

      Programmable CI orchestration for AI

      Visit BuildKite

    11. πŸ”— jj-vcs/jj v0.47.1 release

      This release fixes a dependency error that broke Linux builds in the 0.47.0
      release.

      About

      jj is a Git-compatible version control system that is both simple and powerful.
      See the installation instructions to get started.

      Deprecations

      • The git.sign-on-push boolean option is deprecated in favor of the
        revsets.git-sign-on-push revset. The default value is none(). If
        git.sign-on-push was previously set to true, it will be migrated to
        revsets.git-sign-on-push = "~signed() & mine()".

      New features

      • New revsets.git-sign-on-push config option containing the revset of
        commits to be signed when jj git push is run. It replaces the
        git.sign-on-push boolean option.

      Contributors

      Thanks to the people who made this release happen!

    12. πŸ”— Filip Filmar rules_vunit: VUnit Testbenches Under Bazel rss

      rules_vunit packages VUnit, the unit-testing framework for VHDL, as a hermetic Bazel module. Testbenches written against VUnit check, run, and logging libraries execute as standard bazel test targets. In cocoapuffs-fpga, the module manages approximately thirty *.test.vhdl testbenches evaluated by the NVC simulator. The primary architectural choice in rules_vunit is what it omits: the Python orchestrator.

      Separating library from orchestrator

      VUnit consists of two distinct components. The first component is a VHDL runtime library (vunit_lib), containing check assertions, test runner primitives, and logging utilities. The second component is a Python test orchestrator (run.py), which scans the source tree, computes compilation order, invokes simulators, and aggregates test results.

    13. πŸ”— Servo Blog September in Servo: <progress>, rounded rectangles, and more! rss

      Servo 0.7.0 contains all of the changes we landed in September, spanning 527 commits!

      a black and white cat named Gary showing off new visual web platform
features

      The developer tools console now eagerly evaluates JS inputs, allowing faster feedback (@freyacodes, #47527).

      We’ve shipped new web platform features:

      Plus a bunch of new DOM APIs:

      Security We upgraded to SpiderMonkey v153.3 and mozangle v0.7 , both of which included fixes for security bugs reported upstream (@sagudev, #48176, #47655, #48259). Real world compat

      The egui.rs demo now works as expected with --pref dom._webegpu_enabled.

      http://egui.rs rendering in
Servo

      This Candy Crush game is now playable.

      A Candy Crush game rendering in
Servo

      We’re interested to hear how well your favourite websites run in Servo! Report successes in this Zulip thread or this Github discussion, and failures in our GitHub issues.

      Work in progress Our accessibility tree (--pref accessibility_enabled) now reports geometry bounds for inline elements (@alice, #47905) and does much less work when responding to DOM changes (@alice, @mrobinson, #47690). Additionally, elements with display: none are reported as hidden (@alice, #47772). We had lots of conformance improvements for our WebGL2 implementation (--pref dom_webgl2_enabled) (@mxmgorin, #48423, #48441, #48470, #48479, #48495, #48473, #48536). Support for WSIWYG editors (which rely heavily on contenteditable) is going very well: keyboard inputs are now hooked up when --pref dom_exec_command_enabled is present, so many editors are now usable (example). Closed captioning for video elements is making progress. Text tracks now fire enter, exit, and cuechange events (@TimvdLippe, #47725). Media elements now return the full sorted list of text tracks (@TimvdLippe, #47785), and adding cues to a text track now sets that track correctly (@TimvdLippe, #48012). Text track objects now reflect the attributes of the associated &lt;track&gt; element. Text track URLs are fetched at the correct time (@TimvdLippe, #48325), and active cues are computed correctly (@TimvdLippe, #48305), while text track cues are ordered as expected (@TimvdLippe, #48368). Additionally, WebVTT parsing can now recover from errors (@TimvdLippe, #48391). The Sanitizer API (--pref dom_sanitizer_enabled) now accepts the javascriptURLs property (@skyz1, #47867). IndexedDB continues to improve: tables no longer error if unrelated tables contain duplicate index names (--pref dom_indexeddb_enabled) (@leowatts, #47936). Additionally, we implemented openCursor() and openKeyCursor() on IDBIndex (@kuntal-devrat, #48281), as well as advance() , continue() , and continuePrimaryKey() on IDBCursor (@kuntal- devrat, #48400). We implemented the getTimeline() and setTimeline() methods for the Animation interface (--pref dom_web_animations_enabled) (@simonwuelker, #48122). Embedding API

      There’s a new API for events originating from accessibility tools: Servo::forward_accessibility_action (@alice, @mrobinson, #48512).

      There is also an API to clear session history: WebView::clear_session_history (@Narfinger, #47483).

      The WebView::set_throttled API has been removed (@mrobinson, #39923). Throttling automatically occurs when a WebView is hidden and is stopped when shown.

      The WebViewDelegate::notify_focus_changed method was removed, along with the Servo methods focus and blur (@mrobinson, #48364). Embedders must call WebView::set_focused whenever a WebView has gained or lost system focus.

      The webgl feature has been added to the default_web_features feature (@janeoa, #47866). If an embedding does not want to ship with WebGL support they will now need to disable default features.

      Multiprocess mode is enabled at build time with the new Cargo feature multprocess (@Narfinger, #47360). To remove support for this feature (reducing binary size by ~2MB), build Servo with default features disabled.

      Two new preferences exist to tune garbage collector behaviour: js_mem_gc_malloc_threshold_base_mb and js_mem_gc_urgent_threshold_mb (@mxmgorin, #47999). These can help on memory-constrained devices, and more information is available in the SpiderMonkey source (base, urgent).

      The JVM compatibility target was raised to 11 on Android (@veyndan, #48414).

      For users and developers It is now possible to cross-compile the OpenHarmony build from Windows hosts (@jschwe, #48392). Unhandled promise rejections are reported to the JS console (@TTyChud, #48486), making it easier to narrow down web compatibility issues in Servo. The OpenHarmony SDK was updated to API level 23 (@Narfinger, #48505). Pressing Control+A (or Command+A on macOS) now selects all the content in a document (@dzfrias, @mrobinson, #48025). It is no longer possible to copy text inside of password inputs (@dzfrias, #48404). Embedder-originating JS (e.g. devtools console or embedding APIs) will always execute, even in documents that disable scripting via sandboxing or CSP (@derdilla, #48394). Performance and stability [ __](https://servo.org/blog/2026/11/05/september-in-servo/#performance-and- stability) We improved performance by removing unnecessary allocations (@Narfinger, @TimvdLippe, @yezhizhen, #47689, #47839, #47838, #47982, #48006, #48036, #48099, #48204, #48127, #48218, #48357, #48386, #48422, #48440, #48452, #48508), preallocating more when building vectors (@jschwe, @Narfinger, @sagudev, @webbeef, #47455, #47613, #48026, #48398), and avoiding IPC in single process mode (@leowatts, @Narfinger, @Uiniel, @TTyChud, #47691, #47718, #48002, #48073, #48476, #48435). We also sped up Servo by reducing interactions with the GC (@TimvdLippe, @Narfinger, #47818, #48257, #48396), and doing less work when modifying selections (@SimonSapin, #47579), dispatching events (@webbeef, #48078), calculating font metrics (@RichardTjokroutomo, #48238), and indexing window frames (@mrobinson, #47832). We reduced memory usage in common cases by reusing buffers (@Narfinger, #47751), clearing more page- specific data (@Radeonares32, @Narfinger, @jschwe, @mrobinson, @mxmgorin, #47651, #47806, #47805, #48166, #48295, #48297, #48016), compacting data structures (@Narfinger, @webbeef, @SimonSapin, @mrobinson, #47776, #48039, #48050, #47742, #48301, #48296, #48105), and sharing more buffers (@jdm, #47998). We also fixed a memory leak involving &lt;audio&gt; and &lt;video&gt; elements (@TTyChud, #48371). We turned on thread affinity boosting on Linux, which can improve performance on some CPU architectures (@jschwe, #47058). We’re working on statically preventing a footgun that can lead to uncollectible GC cycles and leaking memory (@Gae24, @jdm, @lumiscosity, @SilvioPilato, @sahilnyk, @TTyChud, @kuntal- devrat, @MohamedAli00949, #47941, #48013, #48021, #48035, #48033, #48051, #48072, #48171, #48209, #48248, #48246, #48264, #48285, #48311, #48408, #48053, #48156, #48186, #48223, #48315, #47872, #47698, #47682, #47735, #47816, #47817, #47794, #47909, #47934, #47935, #47954, #48022, #47955, #48058, #48228, #48247, #48261, #48280, #48302, #48316, #48328, #48346, #48355, #48262, #48377, #48304, #48378, #48388, #48432). We fixed panics in WebRTC (@MunishMummadi, #4772), execCommand() on Document (@TimvdLippe, #47784), &lt;video&gt; (@calvaris, #46148), &lt;iframe&gt; (@jdm, #48465), SharedWorker (@mrobinson, #47940), ancestorOrigins on Document (@mrobinson, #48009), about:memory (@mxmgorin, #47686, #48001), and EGL 1.4 configurations (@mxmgorin, #47803). We also fixed a very ironic panic triggered by the about:crash page that loads when a normal page triggers a panic (@mrobinson, #48055) The JS console no longer hangs when primitive values as thrown as exceptions (@FatCat560, #47629). Servo no longer hangs on shutdown in multiprocess mode (@Narfinger, #48523), when certain pages use IntersectionObserver (@mxmgorin, #47693), when closing a browsing context with pending WebDriver commands (@yezhizhen, #48131, #48172), or when closing SharedWorker s (@nicoburns, #48477). about:memory got more improvements: we measure more memory for SVG rendering (@Narfinger, @mrobinson, #47061), WebAudio (@jdm, #47996), and identify globals that have been leaked (@jdm, #48237). More on the web platform CSS images now delay theload event, leading to more consistent behaviour for engine users performing visual rendering (@TimvdLippe, #48199). Interactive selections in documents continued to improve! They now can span shadow trees (@mrobinson, @SimonSapin, #47931, #47694, #47895), and have consistent heights and positions (@mrobinson, #47937), plus there are new context menu entries to copy and select all (@mrobinson, #48101). Additionally, image- based content shows when it is part of a selection (@mrobinson, #48149). Window.open() respects sandbox flags that prevent popups (@mrobinson, #47653). LargestContentfulPaint now reports the loadTime for image content (@shubhamg13, #48286), ignores cross-origin frames (@shubhamg13, #48094), ignores invisible text (@shubhamg13, #48010), and reports null elements when they are removed from the tree (@shubhamg13, #48125). select() on a text input now focuses the control (@dzfrias, @mrobinson, #48475). Our WebDriver server now automates setting permissions (@xbwwj, @yezhizhen, #47623), while sending click events and keyboard actions uses fewer delays (@yezhizhen, #48066). There are more useful error messages for methods on Document (@eachra- bawn, #47835) and CSS -related interfaces (@eachra-bawn, @jdm, #47746). We upgraded our stylo dependency, which improves compatibility with contrast-color() , color-mix() , vertical-align , list-style , place-items , at-rule() , calc() , alpha() , attr() , content: attr() , and named- feature() (@Loirooriol, #46987, #47942). We also fixed bugs related to visibilityState on Document (@yezhizhen, #47908), containsNode() on Selection (@mrobinson, #47938), setKeyframes on KeyframeEffect (@simonwuelker, #48103), selections when focusing a text input (@mrobinson, #48107), AudioParam clamping and automation (@kevlu93, #48351, #48347), PannerNode outputs (@kevlu93, #48510), the muted attribute on HTMLMediaElement (@TimvdLippe, #48403), placeholders in text inputs (@jdm, #47761, #47797), animations when modifying document stylesheets (@SharanRP, #48000), gradient color stops (@BudiArb, #48288), sticky table rows (@TTyChud, #48380), ::first-letter (@Loirooriol, #48307), text-wrap-mode (@mrobinson, #48469), OTF fonts (@wood- ghost, #47904), CSS and nosniff (@sahvx655-wq, #45481), Sec-Fetch- headers and redirects (@TimvdLippe, #48203), moveBefore() on Node (@mrobinson, #47692), supports() on WebCrypto (@kkoyung, #47768, #47891, #47953, #47984, #48410, #47545), cross-origin windows (@mrobinson, @jdm, #47632, #48411, #48038), origins of about:blank and about:srcdoc (@mrobinson, #47630), keypress events (@mrobinson, #48324), text and media documents (@SilvioPilato, #47823), body() on Response (@TTyChud, #48409), &lt;details&gt; with &lt;summary&gt; (@TimvdLippe, #48224), editing hidden inputs (@dzfrias, #48165), attribute nodes in XPath (@leowatts, @mrobinson, #47912), absolutely positioned boxes (@mxmgorin, #48081), CSS Grid containers with absolutely positioned nodes (@nicoburns, #47519), WebDriver wheel/pointer actions (@yezhizhen, #48143), and blob: URLs (@Gae24, #47910). New contributors

      A special thanks to the following people for landing their first patch in Servo:

      Interested in helping build a web browser? Take a look at our curated list of issues that are good for new contributors!

      Donations

      Thanks again for your generous support! We are now receiving 8144 USD/month (+1% from August) in recurring donations. This helps us cover the cost of our speedy CI and benchmarking servers, one of our latest Outreachy interns , and funding maintainer work that helps more people contribute to Servo.

      Servo is also on thanks.dev, and already 37 GitHub users (+1 from August) that depend on Servo are sponsoring us there. If you use Servo libraries like url, html5ever, selectors, or cssparser, signing up for thanks.dev could be a good way for you (or your employer) to give back to the community.

      We now have sponsorship tiers that allow you or your organisation to donate to the Servo project with public acknowlegement of your support. If you’re interested in this kind of sponsorship, please contact us at join@servo.org.

      8128 USD/month

      10000

      Use of donations is decided transparently via the Technical Steering Committee’s public funding request process , and active proposals are tracked in servo/project#187. For more details, head to our Sponsorship page.

    14. πŸ”— Ampcode News GitLab Integration rss

      Amp now integrates with GitLab, on gitlab.com and on self-managed instances.

      Connect your GitLab account and you can start projects from your GitLab repositories. Orbs clone and push as you and come with glab signed in, so the agent can open merge requests, comment on them, and read issues and pipelines.

      Amp can also subscribe to comments and CI for a merge request it opens. A reviewer's request or a failed pipeline lands in the thread that wrote the code, so Amp already has the context.

      An Amp thread receiving a comment on merge request !1 in amp-test/api, wrapping the README at 100 columns as the reviewer asked, then receiving the CI result: all pipelines complete

      A New Orb for Every New Merge Request or Issue

      Ask Amp to start a new orb for every new merge request or issue in a project. You don't need to keep the thread where you set it up. See Create an Orb Spawner.

      Each new merge request or issue gets its own orb, which reads it and has a summary ready when you open the thread. Later comments go to that same thread. Workspace admins can also run a spawner as a service account.

      You manage all of these in Settings β†’ Integrations & MCP β†’ GitLab under Event Subscriptions, where you can pause or delete them, edit a spawner, and see the orbs each spawner started.

      The GitLab Event Subscriptions table in Settings with a spawner for new amp-test/api issues expanded to show its Spawned Orbs, above subscriptions to issue #5, issue #1, and merge request !1

      Set It Up

      Each person connects GitLab in Settings β†’ Integrations & MCP. Then a group Owner installs Push Updates once for the workspace, with one button in Workspace Settings β†’ Integrations & MCP.

      Amp also supports self-managed GitLab. See Self-Managed Instances.

      Connect GitLab to get started.

  3. November 04, 2026
    1. πŸ”— IDA Plugin Updates IDA Plugin Updates on 2026-11-04 rss

      IDA Plugin Updates on 2026-11-04

      New Releases:

      Activity:

      • ida-settings
      • rhabdomancer
        • eac453c4: fix: comment also call locations at a function's start, and leave com…
        • 8c514142: docs: improve readme
        • b105ec35: fix: match 32-bit x86 functions whose names carry the size of their a…
        • d3b07bf5: test: also catch decorated aliases in the built-in configuration
        • 4785595d: docs: update claude.md
        • 4c6e034c: docs: add todo item
        • 2707403b: chore: remove redundant entries from the built-in configuration
        • a4ab06f7: fix: match glibc's c99 and c23 redirects
        • f93427a4: fix: match functions whose names carry the variant suffixes of apple'…
      • Security-Tools
    2. πŸ”— gildas-lormeau/single-file-cli v2.23.0 release

      SingleFile CLI 2.23.0

      New features

      • New options --custom-stylesheet-file and --embedded-script-file: the path of a file holding the CSS of --custom-stylesheet or the code of --embedded-script, for rules or scripts too long or too awkward to quote on the command line. Each one is refused together with its inline form.
        single-file https://www.example.com/scorecard scorecard.html --custom-stylesheet-file=tabs.css --embedded-script-file=tabs.js
        

      CLI fixes and improvements

      • Updated single-file-core to 1.9.1: the first occurrence of a repeated inline stylesheet is no longer kept in full next to its shared copy when --group-duplicate-stylesheets is enabled, subset fonts produced by --remove-unused-glyphs keep the glyphs CoreText needs to align small text on macOS, and the serializer writes processing instructions and CDATA sections instead of the word "undefined"

      Co-authored by Claude (Claude Code)

    3. πŸ”— jj-vcs/jj v0.47.0 release

      About

      jj is a Git-compatible version control system that is both simple and powerful.
      See the installation instructions to get started.

      Release highlights

      • Templates now have a top-level revset(revset: Stringify) -> List<Commit>
        function for evaluating revsets during templating.

      • In colocated workspaces, jj describe -r@, jj restore --into=@, etc. no
        longer reset the staging area, just as snapshotting doesn't. jj new @- still
        resets it.

      Breaking changes

      • In non-colocated workspaces, jj git fetch and push no longer update
        remote-tracking Git refs. Use jj git export to export remote bookmarks to
        Git.

      • In non-colocated workspaces, jj git import; jj undo; jj git import no longer
        re-imports external changes. Run jj git export to reflect undone changes in
        Git. jj git fetch; jj undo; jj git fetch continues to work as expected.

      • Timestamp.format() now follows jiff's strftime
        syntax
        instead of
        chrono's. Most directives, including the default format, are unchanged, but:

        • %v and %+ are no longer supported. Use %e-%b-%Y and
          %Y-%m-%dT%H:%M:%S%.3f%:z (which always includes milliseconds) instead.

        • %c, %x, and %r produce different output. For example, %x now
          formats as 2001 M07 8 rather than 07/08/01.

        • %f now prints only as many digits as needed rather than always 9. Use
          %9f or %N for the old behavior. Similarly, %.f no longer pads to 3, 6,
          or 9 digits, so it formats as .12 rather than .120.

        • %Z now prints a time zone abbreviation. Use %:z to get an offset.

        • %:::z now includes the minutes of an offset when they are non-zero.
        • New directives and flags such as %N, %Q, %^a, and %5Y are now
          accepted. %#z no longer panics.

        • json(timestamp) now prints a UTC time zone offset as +00:00 instead of
          Z.

      • The bookmarks and tags list now include absent targets for conflicted
        bookmarks and tags. The .removed_targets() and .added_targets() template
        methods now return List<Option<Commit>>.

      New features

      • jj git push with git.sign-on-push enabled now signs commits in a
        separate operation before the push, so commits stay signed if the push
        fails and a new push doesn't have to sign them again.

      • Diff hunk headers now include symbol context even for unsupported languages.

      • jj resolve gained a built-in :editor merge tool that opens the conflicted
        file with conflict markers in your text editor. Unlike the other merge tools,
        it supports conflicts with more than two sides.

      • jj config gc now also cleans up workspace configs whose paths no longer
        exist.

      • Commit.contained_in() now accepts a Stringify instead of a StringLiteral.
        This enables dynamic query building during templating.

      • Templates now have a top-level revset(revset: Stringify) -> List<Commit>
        function for evaluating revsets during templating.

      • The TreeEntry template type now has .removed_values() -> List<Option<TreeValue>>
        and .added_values() -> List<Option<TreeValue>> methods, and TreeValue now
        exposes .object_id(), .file_type(), and .executable() methods for
        inspecting each side of a (possibly conflicted) tree entry.

      • The WorkspaceRef template type now has a .current_workspace() -> Boolean
        method, which can be used to identify the current workspace. This is slightly
        different than self.target().current_working_copy() because multiple
        workspaces can point to the same commit.

      • jj next/jj prev now accept a change ID prefix when prompting for the
        target commit. The special q quit choice was removed; cancel with EOF.
        #9790

      • jj converge now accepts a change ID prefix when prompting for the change
        to converge. The special q abort choice was removed; canceling with EOF now
        exits with an error (previously q aborted successfully).

      • jj file search now detects binary files (any null byte in the first 8000
        bytes) and emits Binary file matches: <path> instead of dumping raw bytes to
        stdout. Use --binary-as-text to force text treatment, or --skip-binary to
        skip binary files entirely.

      Fixed bugs

      • jj git push no longer validates (e.g. for empty descriptions) commits that
        are already on the remote as a tag.

      • jj git fetch no longer creates additional refs based on non-standard Git
        remote.<name>.fetch configuration.

      • jj gerrit upload no longer rejects uploading empty merge commits.

      • The operations created by jj workspace add are now attributed to the
        workspace the command was run in, so jj undo there undoes them instead of
        refusing to undo an operation from another workspace.

      • jj workspace add -r with an invalid revision no longer leaves a
        half-created workspace behind.

      • Shell completion now suggests tag names for jj tag track, jj tag untrack,
        jj tag list, jj git fetch --tag, and jj git push --tag.

      • Fixed tag deletion with jj git fetch --tag=NAME.

      • jj workspace remove can now remove stale workspaces.
        #10276

      • Fixed issue with config-schema.json where Taplo (TOML parsing library) would
        flag any aliases defined as a table but without an explicit
        .enabled = true as "valid under more than one of the schemas". This affected
        downstream tools such as editor extensions showing errors in perfectly valid
        config files.

      • Fixed a race condition in colocated workspaces where concurrent jj git fetch
        and jj commands could import partially fetched refs, causing divergence.
        #7349

      • Fixed a race condition in colocated workspaces where changes to the Git index
        made by a concurrent Git process could get lost.

      • In colocated workspaces, Git export failures are no longer misidentified as
        external changes. Those changes are now re-exported on the next jj
        invocation. #10478

      • In colocated workspaces, jj describe -r@, jj restore --into=@, etc. no
        longer reset the staging area, just as snapshotting doesn't. jj new @- still
        resets it.

      • jj run now materializes conflicts using ui.conflict-marker-style instead
        of always using the snapshot style.
        #10390

      • The Git backend now leaves out the root commit as a parent of a merge commit
        instead of failing. This fixes abandoning a child of the root commit that is a
        parent of a merge commit, including when a Git import abandons it.
        #8076

      • On Unix, repository files under .jj are now created with default file
        permissions.

      • Racy jj config set invocations no longer corrupt the target file. The last
        save wins; changes from other concurrent invocations may be lost.
        #10350

      • Date patterns such as after:"2024-03-10 03:30" are now resolved with the
        correct UTC offset on days with a daylight savings transition. Previously,
        the offset from the start of the day was used, so times after were off
        by an hour. Likely a niche bug fix, but a bug fix nonetheless!

      • Deeply nested revset, fileset, and template expressions are now rejected
        instead of causing a crash.
        #10071

      • In graph output, an elided edge that passes through a merge or fork line is
        now drawn as elided (β•·) before reaching the node, instead of looking like a
        direct edge. Consecutive unconnected nodes, such as in the jj op show
        graph, are now separated by a blank line so they don't look connected.

      • jj log no longer draws a commit as a merge with two elided edges to the
        same commit when there's a merge between them whose parents both lead to
        that commit.

      • The "Did you mean" hint for a mistyped bookmark, revision, or function no
        longer lists every similar name. It now shows the 5 most similar ones,
        most similar first, followed by e.g. or 20 others.
        #8017

      Contributors

      Thanks to the people who made this release happen!

    4. πŸ”— @HexRaysSA@infosec.exchange * Malware Analysis Add-on only works with an active IDA Pro 9.5 license. mastodon
      • Malware Analysis Add-on only works with an active IDA Pro 9.5 license.
      • Cannot be combined with any other promo or discount.
      • 50% off discount can be applied in the web shop or contacting sales@hex-rays.com.
      • Already own IDA? To attach the Add-on to your existing license, select that license from your license list before completing your purchase. See blog for install instructions.
      • 50% off discount promo ends 31 December 2026 @ 11:59pm.
    5. πŸ”— @HexRaysSA@infosec.exchange πŸ†• Meet the Malware Analysis add-on for IDA Pro. mastodon

      πŸ†• Meet the Malware Analysis add-on for IDA Pro.

      It does the slow parts of malware analysis for you:
      - detects packed samples on load and offers to unpack them
      - full-system Windows emulation, no VM needed
      - sandbox events (VMRay or Speakeasy) overlaid on disassembly and pseudocode
      - works headless with idalib

      Read the walkthrough, with a packed sample and APT41's PLUSDROP loader: https://hex-rays.com/blog/malware-analysis-the-new-add-on

      50% off with MALADD50 until 31 Dec!
      *See comments for promo terms.

    6. πŸ”— HexRaysSA/plugin-repository commits sync repo: +2 releases rss
      sync repo: +2 releases
      
      ## New releases
      - [ida-cyberchef](https://github.com/hexrayssa/ida-cyberchef): 0.4.0
      - [ida-settings-editor](https://github.com/williballenthin/ida-settings): 1.3.2
      
    7. πŸ”— Hex-Rays Blog Malware Analysis, the new Add-on rss

      Malware Analysis, the new Add-on

      We are happy to introduce the Malware Analysis Add-on for IDA Pro!

    8. πŸ”— backnotprop/plannotator v0.28.49 release

      Follow @plannotator on X for updates

      Missed recent releases? Release | Highlights
      ---|---
      v0.28.48 | Reply attachments that follow the draft, links to any web page on Board cards, instant theme switches, a daily anonymous ping, a faster Inbox
      v0.28.47 | Board lanes, Settings β†’ Rows, a new thread header, a "Make it yours" tour step, Request guided review, Jira links on Board cards
      v0.28.46 | Snooze a thread, Settings β†’ Accounts, long pastes become file tiles, HTML pages on a phone, hide the repository owner
      v0.28.45 | Plannotator Modern theme, a thread panel view, session names in the To picker, thread links open in place, comment on diagram parts
      v0.28.44 | The iPhone keyboard no longer moves the Inbox, pictures stay clear of the option card, What's new over your tailnet
      v0.28.43 | Voice dictation, combine and rename projects, Mark unread, full-screen threads, Q for open questions, search by type
      v0.28.42 | Choose how your Inbox list looks, contents for long documents, link the Inboxes on two computers, clearer search, documents outside the project open from your own machine
      v0.28.40 | Update works with update checks off, the thread bar shows the thread's name, agents before the project in list rows
      v0.28.39 | Reply from full screen, thread names lead the Inbox list, one project per Claude Code session, a redesigned code review sidebar, Call flow as cards
      v0.28.38 | Attach files to a reply in the Inbox, swipe through a question's picture choices, easier-to-read list rows, code on hover in Call Flow and Semantic Changes
      v0.28.37 | DeepSeek Harness support, save plans to Notion, AsciiDoc in annotate, browse the whole repository in code review, Go to File and Go to Definition, Tidy and hand-offs in the Inbox

      What's New in v0.28.49

      A checklist for each Inbox thread, a pill that shows who gets your reply, a calmer full screen, Inbox replies that reach T3 Code, and --title for review and annotate. 20 PRs, 2 from outside contributors, including a first-time contributor.

      Plannotator Inbox

      A checklist for each thread

      An agent can keep a short checklist of its steps in a thread. The thread's foot shows a pie and a count such as "3/6", and opens the list with what is done, what is in progress, and "Waiting on you β€Ί", which takes you to the agent's open question. Board cards show the same checklist, and Tidy lists a thread whose step has not moved in 2 hours or whose agent has ended. Turn it on in Settings β†’ Capabilities β†’ Checklist. #2565, #2567, #2571, #2572

      The Board and the Checklist introduce themselves

      Behavior change: if you have used the Inbox for a few days and never turned the Board or the Checklist on or off, a one-time dialog shows it to you and turns it on. You can turn either off again in Settings. The dialogs come at a quiet moment, at least two days apart, and never to a guest on your tailnet. #2569, #2583

      See who gets your reply

      When a thread has more than one agent, a pill under the reply box names the agent your reply goes to. Tap it to pick another agent or add a second one. The Reply arrow on a message points the pill at that agent, and "Reply to X in Z" above the box is gone. #2557

      Full screen folds into one corner button

      In full screen, the toolbar, the reply card and the other floating tools now fold into one small button in the bottom-right corner, and one press brings them back. The button still shows a waiting draft, the comment count and the "changed" dot. #2575

      Inbox replies reach Claude in T3 Code

      A reply to Claude running in a T3 Code thread now arrives in that thread as a new turn. Run plannotator t3 to set it up. Built on @hydn-n's work in #2532. #2563

      Smaller changes

      • Snoozing the thread you have open moves its row out of the list right away. Undo puts it back in the same place. #2574
      • The / skill list in the reply box shows in full on an iPhone with the keyboard up. #2576
      • A reply now wakes a Codex thread that sent its message with plannotator inbox call. Reported by @talf301 in #2573. #2577
      • The check mark in the full-screen Open in menu no longer shows as a black triangle. #2570
      • A guest on your tailnet can no longer change threads on a computer linked to your Inbox. #2564

      Plannotator

      Name the tab with --title

      plannotator annotate, annotate-last and review take --title <text>, which sets the browser tab's title. Annotate also shows it in the header. Agents can use it to tell apart reviews of files with the same name. By @BenNewman100, closing #2289. #2537

      Share over your tailnet by default

      Set PLANNOTATOR_TAILSCALE=1, or "tailscale": true in config.json, and code review, annotate and last sessions open over your tailnet without --tailscale on each call. PLANNOTATOR_TAILSCALE=0 turns it off for one run. By @disintegrator. #2533

      DeepSeek Harness: commands and the plannotator tool

      DeepSeek Harness gets /plannotator-review, /plannotator-annotate and /plannotator-last. The plannotator tool is there too, off by default; set PLANNOTATOR_AGENT_TOOL to turn it on. #2556

      Smaller changes

      • In a --tailscale review or annotate session, Ask this session follows the same owner rule as the Inbox, and the owner's hover cards work in every session. #2568
      • @plannotator/ui 0.60.0 can keep the blank lines a person types in the chat transcript. #2561

      Install / Update

      macOS / Linux:

      curl -fsSL https://plannotator.ai/install.sh | bash
      

      Windows:

      irm https://plannotator.ai/install.ps1 | iex
      

      Claude Code Plugin: The plugin and the plannotator binary update separately, so run the install script above as well. In a terminal:

      claude plugin marketplace update plannotator
      claude plugin update plannotator@plannotator
      

      Then restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin β†’ Installed β†’ plannotator β†’ Update now.

      Pi:

      pi update npm:@plannotator/pi-extension
      

      OpenCode: Re-run the install script above. It also clears the OpenCode 2 plugin cache.

      What's Changed

      • DSH native support, part 2: plannotator tool and /plannotator-* commands by @backnotprop in #2556
      • Inbox: reply recipient pill under the box by @backnotprop in #2557
      • feat(ui): ChatTranscript keepUserBlankLines; publish prep core 0.25.18, ui 0.60.0 by @backnotprop in #2561
      • feat(inbox): Inbox replies reach Claude in T3 Code threads as T3 turns by @backnotprop in #2563
      • fix(inbox): a tailnet guest cannot write to a linked machine through the forward by @backnotprop in #2564
      • fix(tailnet): same owner rule for Ask this session by @backnotprop in #2568
      • fix(ui): Open in menu check mark renders filled by @backnotprop in #2570
      • feat(inbox): reveal the Board to returning users by @backnotprop in #2569
      • feat(cli): --title names the tab for annotate, annotate-last and review by @BenNewman100 in #2537
      • feat: PLANNOTATOR_TAILSCALE / config "tailscale" default for --tailscale by @disintegrator in #2533
      • Inbox thread steps 1/5: store and wire by @backnotprop in #2565
      • feat(inbox): thread steps for agents (2/5), behind the switch by @backnotprop in #2567
      • feat(inbox): the checklist in the thread's foot (thread steps, part 3) by @backnotprop in #2571
      • feat(inbox): the checklist on the Board and Tidy's step rule (thread steps, parts 4 and 5) by @backnotprop in #2572
      • docs(agents): never compromise UX by @backnotprop in #2578
      • fix(inbox): skill list always fully visible (phone keyboard, opens above) by @backnotprop in #2576
      • fix(inbox): wake a Codex thread that sends with plannotator inbox call by @backnotprop in #2577
      • fix(inbox): your own snooze moves the row at once by @backnotprop in #2574
      • feat(inbox): full view gathers into one corner control by @backnotprop in #2575
      • feat(inbox): Checklist reveal for returning users by @backnotprop in #2583

      New Contributors

      Contributors

      Community

      • @talf301 reported that Inbox replies did not wake a Codex thread that sent with plannotator inbox call, with the cause and a suggested fix, in #2573.

      Full Changelog : v0.28.48...v0.28.49

    9. πŸ”— Kagi release notes Nov 5th, 2026 - Your friends and family can finally try Kagi rss

      Kagi Search

      Search for everyone

      As many of you know, we don't run ads anywhere. Instead, we are active on social media and online communities to stay close to you, build a great product, and rely on word of mouth.

      We've heard that it can be hard to recommend a search engine when your friends can't try it without creating an account. That's changed: anyone, anywhere, can now visit kagi.com and search the web. No account required for the first 50 searches (100 more upon registration).

      We are counting on you to spread the word to your friends and family <3


      Our new landing page for new users

      Our take on the latest Search industry news

      Google announced that, starting in early 2027, AI tools will be turned off by default for school accounts. It sounds like a win for schools until you read that Google Search will be switched off along with them.

      Our take: Education shouldn't be taken hostage by an advertising company. Let’s stop putting corporate profits over the imperative to educate students.

      Our call to schools facing this choice: You don't have to accept it. There are alternatives to mandatory AI, and, yes, Kagi is one of them.

      Our open letter to the tech industry: Education Shouldn't Be Held for Ransom

      Android app

      The Kagi Search app on Android has a redesigned home screen, rebuilt voice search, and new ways to reach Kagi from anywhere on your phone.

      The redesigned Kagi home screen shows search controls and the remaining free
searches.

      • Added a short tour on first launch that shows what Kagi can do, from bangs and lenses to ranking sites and voice search
      • Redesigned the home screen, which now shows how many free searches you have left when you're trying Kagi without an account
      • The search bar, logo and tabs on results pages are now native, and tuck away as you scroll
      • Rebuilt voice search with its own screen and a new animation
      • Choose the language for voice search
      • Added a voice search tile to Quick Settings
      • Add home screen widgets and the Quick Settings tile straight from Settings > Home Screen Widgets
      • Added a Default Search Setup guide for making Kagi the search engine in your browser
      • Paste an image into the search field to search by image
      • Added a Quick Answer button next to search suggestions
      • Assistant and Summarize now open in the app with a close button and a menu to reload, copy the link, or open in your browser
      • Bang searches now follow the Result Opening setting
      • Fixed Privacy Pass searches showing a blank page after a token key rotation

      Other improvements and bug fixes

      • If you want to hide the Quick Answer results, just click the Quick Answer button again and get all the space back on the page
      • Image-search fails quietly on quotes in search term, and results worse than Google without them #11692 @jducoeur
      • Add staan.ai as source #7926 @Algie
      • Use and collaborate with openwebindex.eu and staan project #10259 @FreeTheIndex
      • Kagi Specials link fails in HTML mode #11748 @larke12
      • Kagi Quick Answer broken when accessing kagi from the .onion #11754 @roblabla
      • HTML source code full of whitespace #11772 @tuesday
      • Keyboard shortcut o does the wrong thing and is not documented #10202 @svenssonaxel
      • Search results can cause browser navigation and other HTML processing #11791 @decade6331
      • Custom bang settings overwritten when bang is moved in the More menu #10428 @tillulen
      • Custom bangs with identical names are deleted after accessing them via Search Options > More > Customize #10429 @tillulen
      • Search query lost after logging in from a private/incognito window #11684 @ddvp7548db
      • Wikipedia widget fails for article links containing URL-encoded characters #10400 @sapphyrus
      • Japanese punctuation in !bangs doesn't work #7930 @sbrl
      • Bing returning irrelevant Reddit results #11707 @Catastrophe
      • Unrelated site appeared at top of search results using site: operator #10387 @jon-chrt
      • Results don't align with region (QuΓ©bec subjects don't show up when set in region "Canada") #2915 @fmg
      • Video search has poor date/time filters #8702 @NightmareNightmareNightmare
      • Early Adopter flag disappears when joining a family #9448 @VIEWVIEWVIEW
      • Add search results timer and uniqueness % to image/video/news/podcast results #10396 @dreifach
      • Make Kagi widgets works on all languages. #10492 @WB0iTF
      • Disable Kagi Knowledge #11210 @Truism
      • 100 searches trial gate query flows out of box #11780 @Numerlor
      • 100 searches trial gate shows urlencoded query if session token in url #11774 @Numerlor
      • Quick Answer tables are cut off on iOS and can't be scrolled sideways #11802 @BigLinus67
      • 'bang emoji' does not show emoji widget (πŸ’₯) #11407 @MustafaD
      • Alberta time incorrect #11801 @mch
      • Superfluous [space] in web search result links #11799 @dreifach

      Note: we added a small banner to warn you if your browser logs you out by mistake. This ensures you know when you've landed on our new explore flow (Kagi's discovery version), which offers a degraded experience compared to your paid plan.

      A banner identifies guest searches and provides a link to log
in

      Kagi Assistant

      Apps

      Shared threads now jump straight into the native app, and we’ve completely redone voice input so speaking a prompt is just as fluid as typing one.

      Finally, a lot of you mentioned it was too hard to tell when a temporary thread was actually temporary, so we reworked the icons and cues to make going off the record unmistakable. Please tell us if it hits the mark.

      Other improvements and bug fixes

      Kagi News

      Kagi News has been featured on Google Play! The editorial spotlight highlights our approach to keeping you informed without the overload, with credible global reporting, clearly cited sources, and multiple perspectives on every story.

      • One event, several angles: stories covering the same event in different categories no longer repeat each other
      • Settings redesigned, with clearer language options
      • Mark each duplicate story in other subscribed categories as already read after I read it in one category #8604 @thunb
      • Image captions showing HTML tags kite-public #611

      Kagi Translate

      Web

      • Proofread shows corrections as they arrive
      • Reloading the page or going Back keeps your finished translation
      • More accurate Sorani, Kurmanji and Latin translations
      • Better PDF tables and Hebrew text, and smaller translated Office files
      • Long pasted text collapses on phones
      • If your Kagi plan shares its AI allowance with Assistant, Translate shows how much of it is left

      Extension

      • Your AI allowance on the Statistics page
      • Best quality for the translation popup and integrations

      Other improvements and bug fixes

      • The Kurdish (Badini) translation became Kurdish (Sorani) #11612 @Haci
      • Cambodian translation shown in Thai script in Best mode #10040 @nick
      • Translate returns the original text unchanged for long or context-heavy translation #11564 @aa
      • Standard translation is unusable for Hungarian #9373 @buherator
      • Kagi translator stops before end of input text. #10099 @MartinNo
      • Japanese characters rendering with Chinese font #11730 @mb
      • Issues with Japanese transcription in Kagi translate #10746 @kagifeedback-1xxkg
      • Kagi Proofread won't follow instructions about correcting accent marks #10043 @jadams9
      • Proofreading thinks that double blank lines between paragraphs are wrong #7922 @kirkmc
      • Proof reader stuck at 89% #10755 @Jeanchallet
      • The translated audio refuses to voice vulgarities #9591 @PetrIako
      • Weird TTS behaviour #9069 @Temanor
      • Spoken translation missing first consonant #9478 @bert
      • Prompt being read prior to translated word #10974 @kagifeedback-1xxkg
      • "False friends" trip translation to interpret input English #11717 @quunnb
      • They constantly changing font size while translating is horrendous #11431 @nazgul
      • Undo operation via Ctrl+Z does not work for removed characters in Translate, only for added. #11745 @shezgara
      • Reset-All Button for Translate #10999 @erakagi
      • Add Web Share Target support to the Kagi Translate PWA #9498 @yeddyfit
      • Notification bar is unreadable on Firefox Android PWA #9304 @lluni
      • Automatic proofreading during typing is extremely slow in the Chrome extension #11680 @HRA42
      • Kagi Translate Extension Integration for Infomaniak Mail #9505 @westerntragopan
      • Handle SPA sites properly in Translate Browser addon #10626 @ripdog
      • Kagi Translate: Most used languages should be based on personal usage #9548 @orschiro
      • Kagi Translate should not offer alternative translations by default on Integrations #11779 @JosephT
      • Unexpected Kagi Translate Button on Google Sheets #11588 @shervin
      • Kagi Translate extension only translates the tab title on Hacker News #11587 @uc
      • Kagi Translate extension wrongly detects certain monitor as 'mobile' #10693 @Roon
      • Kagi Translate extension breaks Kagi News #8824 @Gredharm
      • Kagi Translate & Proofread: Applying suggestions doesn't work with Firefox Desktop Add-on #8695 @orschiro
      • Kagi proofread not applying changes #9514 @ariod
      • Kagi Translate for Right to Left languages, punctuation and alignment are reversed #10194 @fileyfood500
      • Kagi Translate Extension should not fail silently #10227 @Syx
      • Kagi Translate extension no longer injecting a translate button into Fastmail #11672 @Pictor
      • Translate popup has white text on white background on some sites #9830 @Andriamanitra
      • [Browser extension] Kagi icon should come first in Korean #11625 @Hanbyeol
      • Translate summarizes instead of translates #11320 @diskrete
      • Kagi Translate Android "Define with Kagi" feature require login each time #11390 @sandwitch

      Small Web

      Apps

      • Added missing topics - Design & UX, Work & Business, Sports
      • Your selected topic will now be persisted across app opens
      • Hide the topics you're not interested in, and the app remembers your choice!
      • Haptic feedback and accessibility improvements across the board
      • Bug fixes and UI refinements to polish the app's design

      Small Web’s topic filter lets you choose categories and hide unwanted
topics.

    10. πŸ”— Kagi Education Shouldn't Be Held for Ransom rss

      Google told K-12 schools they could turn off AI, but only if they gave up search too. That isn’t integration. It’s holding education for ransom.

    11. πŸ”— OmniNull/OmniWM Canary 20261104-0414 (dd1e2c83) release

      Automated canary build of main. It is signed and notarized like a release but skips the owner review, so treat it as unstable.

      See the canary guide to install, update, or return to stable. For everyday use, download the latest stable release.

      • Commit: dd1e2c83757d
      • Base tag: canary-20261103-0414-41576561015-1

      Changes since canary-20261103-0414-41576561015-1

      • dd1e2c8 Move Niri edge pictures without resizing and reuse their panels
      • 6a21cee Keep resting Niri pictures live and let borders and tab rails follow them
      • dd0a9e4 Slide Niri columns past the bottom edge as pictures
      • 9e7bb89 Move Niri span animation out of the container file
      • 978e6fb Slide focused Niri columns in as pictures and prewarm them
      • e7ad119 Show Niri columns past the top edge as pictures
      • d52f38b Animate vertical Niri column heights like widths
      • c6ab6c2 Keep the focused Niri column visible at the top edge and align parks
      • 02b1978 Preserve oversized Niri columns and repair clamped parks
      • 9141ff1 Merge pull request #1099 from msanft/fix/msanft/window-overflow
      • 6329bd2 Derive tab-rail test geometry from declared fixtures
      • df97624 Merge pull request #1102 from hezhizhen/codex/fix-tabrail-wheel-scroll
      • 7c2a9af Preserve workspace-move focus across queued layout refreshes
      • 2f79a03 Look up process icons through an injectable dependency
      • a0bea37 Discover and open locally authored OmniShell apps
      • 971567e Keep hosted child windows attached through family management
      • 3526695 Synchronize the bar lifetime fixture with rendered content
      • 036861a Add attached confirmation sheets to hosted apps
      • 62ee428 Complete hosted app presentation and quit teardown
      • 7aaf298 Preserve hosted app windows across management changes
      • f7e2f43 test(tab-rail): isolate synthetic wheel modifiers
      • bdcca76 Keep command titles, dispatch and settings within lint limits
      • 3cf65bd Focus an app's latest window and resolve app hotkeys once
      • cbc3778 Merge pull request #1100 from t1dotdev/feat/open-app-hotkeys
      • b143650 Support independent OmniShell app windows
      • 0bcac9f Reconcile app hotkey rows before opening them from Launcher
      • 857e192 Add hotkeys that open or focus Launcher applications
      • b0ff203 Separate shell render correctness from CPU speed checks
      • 077edbc Wait for observation refreshes before checking shell descriptors
      • e4442f6 Derive wheel sensitivity expectations from declared inputs
      • e87ed46 Merge pull request #1089 from msanft/feat/msanft/mouse-sensitivity
      • be7443d Skip unused switcher recency work and share selection width
      • b8d2886 Merge pull request #963 from imprisonedmind/feature/window-switcher-ordering
      • b3bf492 Derive retained resize correction test fixtures
      • 3601b5a Merge pull request #1097 from hezhizhen/codex/fix-retained-resize-pending-writes
      • 5d8d085 Merge pull request #1098 from hezhizhen/codex/test-app-open-ipc-wire-20261103
      • 09f0ac2 Keep status-menu choices without duplicating the app menu
      • b08ce57 fix: defer retained resize correction until frame writes settle
      • a56217c Merge pull request #1076 from Fletcher-Alderton/feat/status-menu-app-menu
      • 6e9ed9c Preserve palm latches across stale registration callbacks
      • eb42c00 Merge pull request #1074 from fakhrishirinov-ai/fix/trackpad-palm-rejection
      • d5820af test(ipc): cover app-open wire encoding and round trips
      • 752f127 Prevent portrait windows from spilling onto neighboring displays
      • e69090b Cover mouse wheel sensitivity through the production handler
      • f25b9fe Derive native resize correction expectations from fixture inputs
      • 97de013 feat(switcher): add configurable window ordering
      • 86151ba Merge pull request #1096 from hezhizhen/codex/fix-native-resize-correction-tracking
      • 52e36dd Merge pull request #1093 from hezhizhen/codex/test-vitreus-overview-overflow
      • 5270f2d Merge pull request #1095 from hezhizhen/codex/fix-generated-ipc-wire-20261103
      • 7cacebf fix: retain fallback resize correction after target changes
      • c195359 fix(ipc): sync wire generator with hosted app commands
      • 9d27d1d Preserve rejected native drag correction across owned clicks
      • 7cca588 Merge the latest pull request #1094 revision from hezhizhen/codex/fix-native-resize-boundaries
      • 6b27fe1 Merge the hosted OmniShell window rendering work
      • 0443eda Synchronize observation tests with native lifecycle completion
      • 178b77b Validate native resize without AX reads on mouse-down
      • 0b3ff1c fix: validate native resize intent through release handoffs
      • 73c3fd6 Merge pull request #1094 from hezhizhen/codex/fix-native-resize-boundaries
      • eb2ab06 fix: validate native resize intent through release handoffs
      • c6a2807 Wrap the CLI usage-error cases to the line width
      • 1e001e5 Merge pull request #1090 from joshbtay/feat/omniwmctl-version
      • dfb0b85 Render hosted OmniShell app windows
      • f8f4d1f Serialize directory stream retirement before replacing roots
      • aea5ce8 test(vitreus): require Overview in workspace overflow layouts
      • dca76cb feat(cli): add --version and -V as aliases of version
      • 32821bc Add configurable mouse wheel sensitivity
      • ea5ddd9 Merge branch 'main' into fix/trackpad-palm-rejection
      • bbeeff6 Merge branch 'main' into fix/trackpad-palm-rejection
      • b3df9b8 feat(menu): honor status menu visibility settings in the panel
      • 1311c1b feat(menu): mirror the focused app's menu bar in the status menu
      • 9dbe4e4 feat(config): add status menu visibility settings
      • 6edf2f0 Keep palm rejection for path ids outside the tracked range
      • 4918c10 fix(gestures): ignore palms when counting trackpad fingers
    12. πŸ”— r/Harrogate Loan of an EV cable to home charge for 12 days? rss

      This is a long shot but does anyone have a granny/slow charge/ uk household plug charger I could please borrow for 12 days?

      I collected a rental car yesterday from Manchester airport and tired and jet lagged I didn’t realise they hadn’t provided that cable.

      I’m staying with my parents here in Harrogate until 14th November and hoped to just trickle charge the few kw I use each night …. Driving to a public charger is going to be inconvenient and costly in comparison.

      Hoping someone relies on faster charging for their needs and has an un-used slow cable πŸ™

      Update - Sorted: Thank you amazing people 😊

      submitted by /u/wise_mind_on_holiday
      [link] [comments]

    13. πŸ”— anthropics/claude-code v2.1.318 release

      What's changed

      • Added a record of your answer when Claude Code asks to turn on the mods it writes in a session
      • Added assume_role on mantle upstreams of the Claude apps gateway, for a role in another AWS account and for per-developer AWS cost attribution
      • Added an effort option to a mod's $.model.fork, so a quick side job can run at low whatever effort the session uses; the result reports the effort sent
      • Added the date a stored claude.ai sign-in ends to claude auth status (loginExpiresAt) and to claude -p JSON results (credential_expires_at)
      • Added a one-line stderr warning to claude -p text output, starting 10 days before a stored claude.ai sign-in ends
      • Fixed --continue sometimes losing the earlier conversation after a malformed tool call's retries ran out (regression in 2.1.314)
      • Fixed macOS sessions with many running Bash commands stalling while memory grew
      • Fixed permission prompts being answered by keys typed just after sending a message, or before a slow prompt appeared
      • Fixed /logout, claude auth logout and claude mcp remove reporting success, and changes to trust, consent or MCP settings being dropped with no word, when the config file could not be updated on a shared network home directory
      • Fixed jobs exiting with Not logged in when another terminal or host signs in again to the same account and organization on the same home
      • Fixed claude mcp add and remove writing the config without its lock: they now wait for it or exit 1, though another job's save can still replace a saved server
      • Fixed claude plugin commands exiting before a slow token refresh was saved, which could sign you out on the next run
      • Fixed claude plugin validate passing a custom-named marketplace file that claude plugin marketplace add rejects
      • Fixed stdio MCP servers that exit on the version probe being re-probed on every start; a server that dies in under 3s for its own reason is also pinned to the legacy handshake for 7 days
      • Fixed sessions being refused at startup by an allowedProviders list that another login on the same machine had stored
      • Fixed idle compaction replacing a conversation with a reply that was not a summary
      • Fixed the "Now using usage credits" notice reappearing about every 30 seconds while a background subagent is running
      • Fixed custom slash commands that fail, or that only Claude can invoke, printing nothing in claude -p and SDK sessions
      • Fixed claude -p and Agent SDK sessions reporting success when an API error cut off a reply while a mod hooked turn.step
      • Fixed a message sent right after a model change still running after Stop in headless sessions: Stop now cancels or stops it as it would a queued message
      • Fixed a deleted session transcript being re-created with its last prompt when an idle non-interactive session exited
      • Fixed claude remote-control hosts, the background daemon and self-hosted runners failing to start new sessions (spawn ENOENT) after an update or version cleanup removed the binary of a still-running process
      • Fixed a running Claude Code process owned by another user (for example one left by sudo claude) being treated as dead by version cleanup, which could delete its binary
      • Fixed /remote-control showing a session as available after a failed connection
      • Fixed /design revoke reporting success when the request failed with a 404
      • Fixed a shell command approved after a self-hosted runner or cloud session restart running in the session's start folder, not the folder it was asked in; if that folder can't be entered, it is not run
      • Fixed Claude not being told when an approved connector tool was unavailable after a cloud session restart
      • Fixed cloud sessions being stopped in the middle of a turn when the service refuses uploads for several minutes
      • Fixed variables a Setup hook writes to CLAUDE_ENV_FILE not reaching the Bash tool in some cloud sessions
      • Fixed the iPhone app showing a cloud session's turn as finished while it kept running, after a response was cut off at a tool call or a refused image or document was removed
      • Fixed a restarted session re-sending a message that failed with an API error, ahead of the newer message waiting behind it
      • Fixed a restarted session dropping its interrupted turn when the restart came right after Claude read a large image or retried a tool call
      • Fixed every connection failing when the NODE_EXTRA_CA_CERTS file is empty, not PEM, or starts with a damaged certificate: readable certificates are now used, with a warning on stderr
      • Fixed workflows re-running finished agents when resumed after a usage limit
      • Fixed /mcp in cloud sessions counting tools the model can't use; a server's row now shows how many of its tools are available
      • Fixed a duplicate notification when Claude left the status field out of a PushNotification call
      • Fixed the error for a too-large image in a request with more than 20 images always saying the limit was 2000px; it now shows the API's limit
      • Fixed the runtime in background shell details not updating while the dialog is open
      • Fixed a mod's turn.step hook making a stopped reply finish as a success in headless runs
      • Fixed retention cleanup leaving a home that only runs claude -p with no ~/.claude.json backup: it now takes a fresh backup before deleting the last good one
      • Fixed the stored login being replaced by an empty file when a network home directory has no room left for data but still takes new files
      • Fixed tokens from setup-token being refused at start on machines with forceLoginOrgUUID, when the token belongs to a permitted organization
      • Fixed non-interactive launches replacing a ~/.claude.json that isn't valid JSON with defaults; the start now fails, says how to restore the file, and leaves it as is (#87551)
      • Fixed an empty ~/.claude.json with no backup being reported as corrupted; Claude Code now starts as it does when the file is missing
      • Fixed the restore command printed for a damaged or missing ~/.claude.json naming an empty or cut-off backup, or failing on a read-only file
      • Fixed the sign-in failure when a stored claude.ai login reaches its time limit: it now says so, and in claude -p names claude auth login and claude setup-token
      • Improved how ~/.claude.json, settings files and the stored login survive saves on shared network home directories: they are less often deleted, briefly emptied or replaced by a near-empty or older copy
      • Improved sessions on network file systems to look again when the configuration file is wrongly reported as missing, so fewer start without your MCP servers and trusted folders
      • Improved MCP tool errors: a call made before the tool is loaded now returns its input schema
      • Improved the reliability of git commits and pull request creation when the Bash tool runs macOS's built-in /bin/bash
      • Improved "Ask your admin for more usage" in the usage limit menu to send the request in one step
      • Improved how fast remote sessions reconnect after a pause or sleep
      • Improved You should know toasts to say "try again" instead of "press 2", which only works in the terminal
      • Improved auto-update reliability: a brief network failure while verifying a release is now retried right away instead of waiting for the next check
      • Improved unattended runs (claude -p, SDK apps) to stop rewriting ~/.claude.json on every run when nothing in it changed
      • Changed Claude Code to no longer install or update the IDE extension when started in an IDE terminal; use /ide from an outside terminal or your editor's extensions view
      • Changed subagents to stop instead of switching models when "Switch models when a message is flagged" is set to "Ask each time"
      • Changed background subagents to move a shell command to the background after 3 minutes on all providers, so the prompt cache doesn't expire while it runs
      • Changed subagent progress summaries on Bedrock, Vertex, Foundry, or with telemetry off: on a cold prompt cache, one can now wait up to 5 minutes for the subagent's pending response
      • Changed what a mod attaches at prompt.submit to stay in the user's turn rather than go out as a system message
      • Changed deniedMcpServers URL entries to also block Anthropic-provided servers whose upstream URL matches, and connectors in cloud sessions and on self-hosted runners, where the session is given the connector's own URL; otherwise deny a connector by name
      • Changed the /permissions rule details, built-in rules and delete confirmation views to use the standard dialog; pressing Ctrl+C twice there now goes back or cancels instead of quitting
      • Changed /claude-api managed-agents-onboard to give a new agent's built-in tools, and a quickstart template's MCP tools, the auto permission policy ("Judge risky actions") by default, matching the Claude Console; say "run without asking" to opt out
      • Removed the 2.1.288 fix that kept the model's earlier thinking when resuming a conversation started on 2.1.286 or earlier; that thinking can now be dropped
      • Gateway: Added a log warning when the Google access token from a federation (external_account) credentials file is about to expire
      • Gateway: Improved the log hints about listen.trusted_proxies: they now say to list only a proxy that adds the connecting address to X-Forwarded-For itself
      • Gateway: Improved the warning when AWS CountTokens fails on Amazon Bedrock: it says Claude Code, not the gateway, counts after the 501, and points at IAM only when AWS denies access
      • Self-hosted runner: Added CLAUDE_RUNNER_SPAWN_REASON to the orchestrator's spawn-runner hook environment: why Anthropic sent the request (e.g. runner_lost, resumed); unset when none was sent
      • Self-hosted runner: Added a startup warning when --release-idle-session-min is the last argument with no value (still ignored) or has a value of only spaces (still read as 0)
      • Self-hosted runner: Changed the orchestrator's log lines: ok session=… now prints at every log level on stdout (was debug only, stderr) with reason=… after jti=…, and nack session=… ends its fields with reason=… after retryable=…; update scripts that match retryable=true: or retryable=false:
      • Remote Control: Fixed a misleading "spawn error: ENOENT" when a session's working folder is missing; the error now names the folder
      • Remote Control: Improved the title a fork of a terminal fork is created with when the app doesn't set one: "Name (fork 2)"
      • [VSCode] Fixed a window whose sign-in the organization's settings refuse starting a new Claude Code process in the background every minute
      • [VSCode] Fixed a long word in the chat panel's error banner pushing its close button out of view
      • [VSCode] Improved the sign-in screen to show what Claude Code printed when its sign-in status check fails
      • [Cloud sessions] Added a No repository option: a cloud session on an Anthropic-hosted environment can now start without picking a repository
      • [Cloud sessions] Added the usual Chrome names to cloud sessions, so tools other than Playwright can find the built-in Chromium through google-chrome and CHROME_PATH
      • [Cloud sessions] Added a New session button to the card shown when a cloud session's environment was deleted, where the message box is hidden
      • [Cloud sessions] Fixed reading GitHub Actions logs in cloud sessions: gh run view --log and gh api log requests now get the log in most environments, not an unreachable redirect
      • [Cloud sessions] Improved most Create PR failure messages in cloud and Remote Control sessions: they now give the reason or a link to GitHub instead of saying Try again
      • [Cloud sessions] Changed connector search results to tell Claude that the search covers only part of the connector directory
      • [Remote Control] Fixed side-by-side checkouts of one repository looking identical in the environment menu's Remote Control rows; each now shows its own folder name
      • [Claude Tag] Fixed keyboard focus and screen reader announcements in Claude Tag admin setup; pressing Escape in the connect form no longer also closes the Add dialog
      • [Code Review] Improved the Code Review analytics page to retry once after a server or network failure, then show a Try again banner instead of empty cards
  4. November 03, 2026
    1. πŸ”— IDA Plugin Updates IDA Plugin Updates on 2026-11-03 rss

      IDA Plugin Updates on 2026-11-03

      New Releases:

      Activity:

      • binsync
        • 25596397: fix(core): write state files atomically (#537)
      • capa
        • ad6077df: Merge pull request #3221 from mandiant/fix-ida-9.5-tests
        • 02575993: changelog: document IDA 9.5 fixture and uv cache updates
        • 911447e9: ci: key setup-uv cache on pyproject.toml in idalib-tests
        • c3e95c4e: tests: use user leaf function 0x401517 in mimikatz calls-from fixtures
        • 9d6241e9: Sync capa rules submodule
        • abde628f: Sync capa-testfiles submodule
        • d28e9a07: Sync capa rules submodule
        • 59ada2b2: Merge pull request #3212 from mandiant/dependabot/pip/setuptools-84.1.0
        • eb5e05d3: Merge pull request #3217 from mandiant/dependabot/pip/pyasn1-0.6.5
        • 7e886004: Sync capa-testfiles submodule
        • 137d861a: Sync capa rules submodule
        • 893d3f14: build(deps): bump pyasn1 from 0.6.4 to 0.6.5
        • 52f8f336: Merge pull request #3145 from corkamig/feature/string-literal-prefilter
      • hrtng
      • ida_rpc
        • 420fcba0: Merge pull request #6 from xiaozhu1337/fix/windows-daemon-startup
        • efebca6b: Add ida 9.5 support
        • 8b442630: Updates
      • quokka
        • 4c212e31: Merge pull request #136 from quarkslab/dependabot/pip/python-22601f1e71
        • cf2185de: Regenerate Binary Ninja protobuf for grpcio-tools 1.84
        • ba3b93e4: Merge pull request #144 from quarkslab/dependabot/github_actions/acti…
      • rhabdomancer
        • dc0570d4: fix: match native arm64ec functions, whose names ida 9.5 keeps with t…
    2. πŸ”— Evan Schwartz Scour - October Update rss

      Hi friends,

      In October, Scour scoured 1.5 million articles from 34,703 feeds. 164 new users signed up since the last product update email, so welcome to you all!

      Here's what's changed in the product:

      🧠 Smarter Topic Matching

      I rebuilt the way Scour determines which content is relevant from the ground up so you'll see more relevant posts and fewer off-topic ones in your feed.

      During the rebuild, I also replaced the embedding model Scour uses, meaning I am no longer using the sponsored model from MixedBread. Thank you so much to MixedBread for sponsoring 2 years of Scour's embeddings πŸ™. I'll continue to be a big fan of their work and eager reader of their blog, which you can subscribe to via Scour here. Going forward, Scour will be using the Voyage 4 family of models, which I'm pleased to say I actually heard about initially on Scour.

      πŸ—£οΈ Smoother Screen Reader Experience

      For people who use screen readers to navigate Scour, the website experience should be quite a bit better now. Headings are easier to navigate and keyboard shortcuts are easier to find and can be turned off so they don't interfere with screen readers. Thanks to Elliott P for letting me know that certain parts of Scour were hard to find and use!

      πŸŽ›οΈ Filter Feed to New Sources

      For those of you who subscribe to specific feeds, Scour previously had the options to see content either from "All sources" or "Feeds you follow". Now, you can also see only content from "Beyond your feeds" if you want to use Scour to discover exclusively new content you're not seeing through your feed subscriptions.


      πŸ”– Some of My Favorite Posts

      Here are some of my favorite articles I found on Scour in October:

      • I really appreciated this provocative take from Sean Goedecke that Software Engineers don't get to be Luddites about AI. As he wrote, "Software engineering has always automated industries".
      • Alex Kesling wrote about how engineers are moving up The Stack of Caring, "the layer cake of abstraction and technology between a person and some thing they want to do in the world".
      • Zvi Mowshowitz wrote a good (and long) summary of many of the hacks and vulnerability disclosures that led to October being referred to as Black October, The Hackening. One former OpenAI employee quoted in the article said "Feels like March 1, 2020 for Cyber".
      • Ben Congdon wrote about Agentic Monitoring, which has been on my mind since I recently moved away from Fly.io's built-in Grafana and an open source product analytics stack to a home-rolled system that does both observability and analytics. Similar to Ben, I found this line from an Anthropic post quite interesting: "We call these Claude 'superfans.'...They...act like an experienced engineer who has nothing better to do than to refresh charts and look for anything strange."

      Happy Scouring!

      - Evan

    3. πŸ”— Simon Willison Qwen 3.8 27B on my laptop can interpret model weights, too rss

      Yesterday's hot paper was Sparks of Weight-Space Programming: LLMs can natively read & write neural network weights by Rikiya Takehi, Jayden Teoh, Alex Zhang, and Omar Khattab. The paper (OK, the authors classify is as a "blog post", but it's paper-shaped) found that frontier models, in particular GPT-6 Astra, can both interpret and modify the raw weights of a machine learning model - literally a text description of the model containing a bunch of floating point numbers. I've been playing with one of the examples from the paper and I'm delighted to share that Qwen 3.8 27B running on my laptop can do this as well!

      Weight-Space Programming

      Here's the highlight from their abstract, describing impressive capabilities for GPT-6 Astra and coining the term Weight-Space Programming for when LLMs analyze and modify model weights:

      Just by looking at the raw weights, GPT-6 Astra can tell what a network was trained to do. And without any environment feedback, it has no trouble writing, from scratch, small game-playing networks that outplay networks trained with PPO for 100 million steps.

      Likewise, asked to make Qwen3.5-0.8B better at math without gradients, Astra identifies an issue in its weights causing reasoning loops that Qwen’s own model card warns about, and fixes this by natively editing 0.016% of the weights. With the same sampling settings, this weight correction raises MATH-500 from 7.9% to 48.1% and generalizes out of the box to instruction following, raising IFEval by 3x.

      All of this is possible without allowing Astra to write training loops. It uses its reasoning to figure out what each part of a neural network computes, or should compute, and changes the weights accordingly. We call this Weight-Space Programming.

      The paper combines two topics that I think deserve to be treated separately. The first is what models can do with raw weights without running tools or executing code. The second explores how well models, once armed with code, can run operations to update and improve other models.

      spaCy author Matthew Honnibal called the paper misleading for conflating the two, and Sean Goedecke deconstructed the Qwen3.5-0.8B update example as taking the same steps that a human ML researcher would use.

      I'm going to focus on the no-tools question, which I think is the more interesting of the two.

      The paper presents the first question as Can LLMs understand model behaviors from weights? They trained four neural networks to play simplified 10x10 grid versions of four classic computer games - Breakout, Pong, Pac-Man, and Freeway (I had to look that one up, it's an Atari 2600 game from 1981). Then they fed those weights (as floating point numbers) to an LLM along with the following question:

      The weights below belong to one policy network that was trained with reinforcement learning to play a game on this grid. Which game was it trained on? Work from the weights. You have no tools: no code execution, no calculator, nothing to run. This is a single response.

      The GitHub repository that accompanies the paper is RikiyaT/lm_understand-logs. The exp1_which_game folder contains the prompts they used, with weights for the four games:

      I checked and, aside from the weights, each prompt is identical to the others.

      Trying it out with Qwen 3.8 27B and other models

      The prompts on GitHub are self-contained. My LLM tool has a -f/--fragment option which can be passed the URL to a text file to use as a prompt, which means I can run any of the above like this:

      llm -f https://raw.githubusercontent.com/RikiyaT/lm_understand-logs/refs/heads/main/exp1_which_game/runs/breakout/prompt.txt \
        -m openrouter/moonshotai/kimi-k3.1-pro

      This example requires the llm-openrouter plugin installed, and runs the Breakout prompt against Kimi K3.1 Pro via OpenRouter. Here's what I got back from Kimi K3.1 Pro, which successfully guessed Breakout after 9m 41s and 19,493 reasoning tokens.

      But how about Qwen 3.8 27B? That's still my favorite model to run on my own laptop - it's just 17GB (I use this version) and somehow feels close to the leading proprietary models of 2025.

      I fired up LM Studio, ensured Qwen 3.8 27B was loaded with a long context window (the default 8192 context failed with errors), installed the llm-lmstudio plugin and ran this command:

      LMSTUDIO_TIMEOUT=900 \
        llm -f https://raw.githubusercontent.com/RikiyaT/lm_understand-logs/refs/heads/main/exp1_which_game/runs/pacman/prompt.txt \
        -m lmstudio/qwen/qwen3.8-27b

      (I had to bump the timeout up using an environment variable, see this issue.)

      After 46m 12s and 43,506 reasoning tokens, Qwen on my laptop returned a response that ended like this (here's the reasoning trace):

      Game: A simplified Pac-Man-style gridworld: an agent moves through a fixed 8x8 maze with central and corner wall blocks, moving objects/ghosts, and reward targets/pellets.

      Description: The agent navigates a fixed maze-like 8x8 board, using current agent/moving-object/previous-frame cues to move through corridors, collect reward-target cells, and avoid moving objects or hazards.

      Confidence: 72%

      This is impressive. I tried it on two of the other games as well. It identified Pong (reasoning) in 1h 4m 54s:

      Pong β€” specifically a Pong-like paddle/ball game where the agent controls a vertical paddle on the right side and must move up/down to intercept or return a moving ball/reward object.

      Description:

      The agent moves a right-side paddle vertically to hit or catch a moving ball-like reward target moving across the 8Γ—8 field, while a left-side moving object/opponent and wall borders define the play; reward is obtained by successfully intercepting/returning/scoring the ball, and missing or failing to hit it is penalized.

      Confidence:

      75%

      And Breakout (reasoning) in 52m 25s:

      Game: Breakout, or an Arkanoid-like paddle/ball/brick game.

      Description: The agent is a paddle on the bottom row and moves left/right to keep a ball in play; the ball moves around the upper grid, and bricks/reward targets in the top rows give reward when hit, while missing the ball/hitting the bottom wall ends the episode or gives penalty.

      Confidence: 88%

      Qwen failed at the Freeway prompt, which didn't surprise me considering that game is more obscure than the other three. Here's that transcript - Qwen thought it was "A simplified Pac-Man-like grid game: agent moves 4-directionally".

      The reasoning traces are fun to skim, and almost incomprehensible. Here's a sample:

      What about agent channel0? We see some large channel0 rows near row8 col7/8 and maybe bottom? Let's list channel0 large: line436 input435 (row8 col7 ch0) -2.107,1.169,0.513...; line441 input440 (row8 col8 ch0) -0.376,0.010,1.564,3.855...; line445 input444 (row8 col8 ch4) 0.142,0.491...; line382? input381 ch0? Wait line382 input381: 381//5=76 (row7 col6), ch1? 381%5=1? 76 * 5=380, ch1. So not. Channel0 large maybe at row8 col7/8 only. Also top row? line44 input43 ch3, line49 ch3. Channel0 large maybe not many. Agent position could be near bottom-right? If the agent is typically at bottom-right?

      That said though, I expect a sufficiently experienced human being armed with a notepad and a pencil could get there with enough effort.

      It's a cool paper, but some of the wider commentary I've seen around it does not feel justified. I'm not ready to declare that the age of source code is over and our future involves incomprehensible machines editing their own model weights in incomprehensible ways.

      You are only seeing the long-form articles from my blog. Subscribe to /atom/everything/ to get all of my posts, or take a look at my other subscription options.

    4. πŸ”— Cryptography & Security Newsletter eMudhra: Free Certificates for Everyone rss

      With the groundwork for the post-quantum migration of key establishment behind us, browser vendors are increasing their efforts on the remaining parts: post-quantum authentication. (If you haven’t been following the events surrounding post-quantum migration, our newsletter from two months ago has a quick recap. Read it before continuing here.)

    5. πŸ”— HexRaysSA/plugin-repository commits sync repo: +1 release, -1 release rss
      sync repo: +1 release, -1 release
      
      ## New releases
      - [ida-rpc](https://github.com/bkerler/ida_rpc): 0.2.1
      
      ## Changes
      - [ida-rpc](https://github.com/bkerler/ida_rpc):
        - removed version(s): 0.1.0
      
    6. πŸ”— backnotprop/plannotator v0.28.48 release

      Follow @plannotator on X for updates

      Missed recent releases? Release | Highlights
      ---|---
      v0.28.47 | Board lanes, Settings β†’ Rows, a new thread header, a "Make it yours" tour step, Request guided review, Jira links on Board cards
      v0.28.46 | Snooze a thread, Settings β†’ Accounts, long pastes become file tiles, HTML pages on a phone, hide the repository owner
      v0.28.45 | Plannotator Modern theme, a thread panel view, session names in the To picker, thread links open in place, comment on diagram parts
      v0.28.44 | The iPhone keyboard no longer moves the Inbox, pictures stay clear of the option card, What's new over your tailnet
      v0.28.43 | Voice dictation, combine and rename projects, Mark unread, full-screen threads, Q for open questions, search by type
      v0.28.42 | Choose how your Inbox list looks, contents for long documents, link the Inboxes on two computers, clearer search, documents outside the project open from your own machine
      v0.28.40 | Update works with update checks off, the thread bar shows the thread's name, agents before the project in list rows
      v0.28.39 | Reply from full screen, thread names lead the Inbox list, one project per Claude Code session, a redesigned code review sidebar, Call flow as cards
      v0.28.38 | Attach files to a reply in the Inbox, swipe through a question's picture choices, easier-to-read list rows, code on hover in Call Flow and Semantic Changes
      v0.28.37 | DeepSeek Harness support, save plans to Notion, AsciiDoc in annotate, browse the whole repository in code review, Go to File and Go to Definition, Tidy and hand-offs in the Inbox
      v0.28.36 | Qwen Code support, plans open in the Clean look, live HTML and diagrams in Inbox messages, a Feedback button, plannotator inbox status, stop and restart

      What's New in v0.28.48

      A daily anonymous ping, reply attachments that follow the draft across devices, a faster Inbox, instant theme switches, and links to any web page on Board cards. 18 PRs, all from @backnotprop.

      Plannotator Inbox

      Reply drafts keep every attached file

      Files you attach to a reply with the paperclip, by drop or by paste now stay with the draft on every device, and whichever device presses Send sends them. Before, only long pastes survived Cancel, a thread switch or a reload. #2525

      Link any web page from a Board card

      A Board card accepts any web link. YouTrack links show the ticket key with the YouTrack logo, like Jira links do, and links you add show their site's favicon. #2540

      One calm reply footer on a phone

      On a phone, the reply box foot is one row: the paperclip, one summary line ("4 questions open Β· 3 comments"), and the mic. The line opens a sheet with the open questions, picks and comments that go with the reply. Desktop is unchanged. #2538

      Shared threads name the right agent

      When two agent sessions write in one thread, the reply box, the "Delivered to" line and the list row now name the agent your reply goes to. A reply is marked delivered only when that agent reads the thread, not when another session does. #2535

      Snooze announcement

      A one-time dialog shows how Snooze works, with Try it and Got it. It appears once, for people who have used the Inbox for a couple of days and never snoozed. #2547

      Pinch and double tap on diagrams, on a phone

      A Mermaid or Graphviz diagram opened full screen now zooms with a pinch, pans with two fingers, and zooms in or back to Fit with a double tap. On iOS Safari the panel header and close button are no longer cut off. #2551

      DeepSeek Harness in the Inbox

      DeepSeek Harness gets a connect panel, a switch in Settings β†’ Agents (off by default), and live wake for a reply sent to its session. The plannotator tool and commands come later. #2529

      Smaller changes

      • Opening a thread in a big Inbox is about 3x faster, and returning to the list is about 4x faster. #2548, #2552
      • The Inbox reloads less after each change, so it stays responsive while agents write. #2549
      • Settings β†’ Storage counts its sizes only when you open it, so the rest of the Inbox no longer waits on the count. #2546
      • A Board card's top bar stays on one line on a phone, and the column pill no longer wraps. #2541
      • The New card window fills the screen on a phone. #2550
      • An agent that writes a :::question line with text after it is told the question will show as plain text. #2542
      • New timing tools for the Inbox, off unless the Inbox debug log is on. #2539

      Plannotator

      Anonymous daily ping

      Behavior change: this release adds a daily anonymous ping, on by default.

      Anonymous daily ping. Once a day, each Plannotator tool you use (Inbox, plan review, code review, annotate, last) sends one anonymous ping: the tool's name, the version, and how many weeks since this computer first used Plannotator. There's no ID and nothing about you or your work. It helps us see how many people use Plannotator and where to put our effort. It's on by default. To turn it off, set NO_ANON_PING=1 and restart Plannotator. It never runs in CI. Details: https://plannotator.ai/privacy

      #2543

      Instant light/dark and palette switches

      Switching between light and dark, or picking a new color palette, now lands in one frame in the Inbox, plan review, code review and annotate. Before, the page froze for about half a second and then faded. Match system follows your computer the same way. #2545

      Smaller changes

      • @plannotator/ui 0.59.0 updates the text highlighter to 0.8.2, which fixes a memory leak: a closed document's highlights and page tree are now freed. #2544

      Install / Update

      macOS / Linux:

      curl -fsSL https://plannotator.ai/install.sh | bash
      

      Windows:

      irm https://plannotator.ai/install.ps1 | iex
      

      Claude Code Plugin: The plugin and the plannotator binary update separately, so run the install script above as well. In a terminal:

      claude plugin marketplace update plannotator
      claude plugin update plannotator@plannotator
      

      Then restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin β†’ Installed β†’ plannotator β†’ Update now.

      Pi:

      pi update npm:@plannotator/pi-extension
      

      OpenCode: Re-run the install script above. It also clears the OpenCode 2 plugin cache.

      What's Changed

      • fix(inbox): keep a phone's Board card top bar on one line by @backnotprop in #2541
      • feat(dsh): native DeepSeek Harness setup and Inbox wake (part 1) by @backnotprop in #2529
      • Inbox: name the real recipient in shared threads, and only the recipient's read settles a reply by @backnotprop in #2535
      • perf(inbox): drafts read builds only threads with drafts; the window re-reads the open thread only for its records by @backnotprop in #2549
      • perf(theme): light/dark and palette switches land in one frame by @backnotprop in #2545
      • perf(inbox): fit the counts column without reading every row by @backnotprop in #2548
      • Inbox: one calm row for the reply box foot on phones by @backnotprop in #2538
      • Inbox: warn the agent when a question block never opened by @backnotprop in #2542
      • Inbox: reply drafts keep every attached file, on every device by @backnotprop in #2525
      • feat(board): link any web page and YouTrack issues from a card; favicons for the person's links by @backnotprop in #2540
      • perf(inbox): Server-Timing and pn: marks with the debug log on, slow lines, opt-in overlay, store budgets by @backnotprop in #2539
      • chore(ui): web-highlighter ^0.8.2 (memory leak fix) and @plannotator/ui 0.59.0 publish prep by @backnotprop in #2544
      • perf(inbox): Settings β†’ Storage counts its sizes on its own, only when shown by @backnotprop in #2546
      • fix(inbox): New card window is full screen on a phone by @backnotprop in #2550
      • Daily ping: one anonymous ping per tool per day by @backnotprop in #2543
      • fix(diagram): pinch, two-finger pan and double tap on a phone by @backnotprop in #2551
      • Inbox: one-time Snooze announcement (B, the real menu) by @backnotprop in #2547
      • perf(inbox): list rows mount their tooltips on first hover or focus by @backnotprop in #2552
      • test(inbox): fix the flaky "Make it yours" instant-switch check that turns main red by @backnotprop in #2558

      Community

      • Links to any web page and YouTrack tickets on Board cards were requested through in-app feedback (#10 from 0.28.46, on Linux).
      • No linked issues or outside commenters on these PRs.

      Full Changelog : v0.28.47...v0.28.48

    7. πŸ”— OmniNull/OmniWM Canary 20261103-0414 (d786c2d0) release

      Automated canary build of main. It is signed and notarized like a release but skips the owner review, so treat it as unstable.

      See the canary guide to install, update, or return to stable. For everyday use, download the latest stable release.

      • Commit: d786c2d08c44
      • Base tag: canary-20261101-1233-41306790357-1

      Changes since canary-20261101-1233-41306790357-1

      • d786c2d Separate native title-bar release preparation from settlement
      • b4008af Derive notification source action support in the host
      • 79e237d Derive focused workspace probe geometry from layout data
      • a409563 Adapt native resize handoff tests to optional AX references
      • b0d7343 Merge pull request #1072 from hezhizhen/codex/fix-notification-clear-incomplete
      • 22d2213 Merge pull request #1071 from hezhizhen/codex/fix-native-resize-handoff
      • aebc1fa Merge pull request #1079 from hezhizhen/codex/fix-focused-workspace-overflow
      • 8b09178 Merge pull request #1078 from hezhizhen/codex/test-clip-outline-initial-fill
      • 3c05352 Make the scene clock test catch late clock reads
      • 33106b3 Merge GitHub main into the hosted window work
      • 046de94 fix(vitreus): keep the focused workspace visible on overflow
      • d4e6264 test(shell): initialize clip scenes with their final fill
      • 0e273eb fix: preserve native resizes across drag handoffs
      • 178d52a fix(notifications): separate membership and metadata completeness
      • dfff63b fix(updates): stop reading Task.isCancelled on the stored install task (#1088)
      • 9971d70 test(clipboard): raise rich text capture timeout for headless ci
      • c5cf973 test: cut redundant and slow tests, shard ci (#1084)
      • 743cbad Merge pull request #1082 from llwt/fix/quake-tab-bar-overdraw
      • 234241c fix(terminal): keep the Quake tab bar fill inside its bounds
      • 035e67f Let managed window state hold OmniWM-hosted windows
    8. πŸ”— anthropics/claude-code v2.1.317 release

      What's changed

      • Added a warning to /schedule when a new cloud scheduled task gets connectors you did not ask for, with how to remove them
      • Added a check that asks before a web or shell tool call sends your account email address to the network
      • Added onFailure: "block" for Agent SDK hook callbacks, so a callback that fails blocks the action instead of letting it run
      • Added a notice in Claude Desktop's Code tab when your organization's remote managed settings haven't loaded for the session, and another once they do
      • Added a notice when auto mode's check has no answer for a subagent's tool call, which used to leave nothing in the main view
      • Added anthropic.plan, anthropic.seat_type, anthropic.provider and anthropic.custom_base_url to OTel metrics, events and spans
      • Added a cost report to the Claude apps gateway admin API, GET /v1/organizations/analytics/cost, for reading past spend over a date range in total, per developer, per day or per IdP group
      • Added a daily record of each developer's IdP groups on Claude apps gateways with admin: set, kept for admin.identity_retention_days, which the cost report groups by
      • Added CLAUDE_CODE_DISABLE_NESTED_SESSION_ID: set it to 1 on a self-hosted runner to have claude -p run inside a session use that session's ID and transcript, as in earlier versions
      • Fixed project and local MCP servers disconnecting after the first turn in some Claude desktop sessions
      • Fixed auto mode failing every turn when an LLM gateway set as the base URL answers 403 or 422 to its server-side safety check (a 403 with an apiKeyHelper is unchanged)
      • Fixed claude auth status exiting before a slow token refresh was saved, which could sign you out on the next run
      • Fixed a project's effortLevel setting being ignored by sessions that an app starts ahead of time and then opens in the project, such as new sessions in the desktop app's Code tab
      • Fixed claude --from-pr reporting "No conversations found" in projects with many sessions when the linked session was older than the first page
      • Fixed the second of two simultaneous permission prompts showing no file path or command on claude.ai and the mobile apps
      • Fixed Remote Control and SDK hosts offering "don't ask again" on a mod's tool calls
      • Fixed session titles being lost in cloud and SDK sessions when a new message or Stop arrived while the title was generating
      • Fixed self-paced /loop wakeups sometimes not being scheduled when Claude left a field out of its request
      • Fixed auto mode in cloud sessions stopping for approval when the Artifact tool uploaded, wrote to a database or saved a file through the outputs folder
      • Fixed skills synced from claude.ai being lost or downloaded again every ten minutes when they can't be written to disk
      • Fixed /schedule leaving a cloud scheduled task's next run time and link out of its results after creating or updating it
      • Fixed screen readers speaking a running subagent's elapsed time and token count on every change in screen reader mode
      • Fixed a region or network block (HTTP 403) being shown as a sign-in failure; the error now explains the block
      • Fixed Claude saying a working claude.ai connector needed authorization or had failed in cloud sessions when a synced plugin included the same server
      • Fixed claude -p exiting 0 when a full disk or quota lost its transcript or ~/.claude.json writes; it now prints an error and, in text and json output, exits 1. Full NFS exports may be missed
      • Fixed edits to settings files made in the first second or so after launch not taking effect until a settings file changed again
      • Fixed old transcripts not being cleaned up on machines where some runs skip cleanup, such as runs using --setting-sources
      • Fixed deleted agent team inboxes being re-created by a teammate's late message
      • Fixed a re-created agent teammate being removed from its team by an earlier shutdown approval
      • Fixed stored scheduled tasks being impossible to list or delete after scheduled tasks were turned off
      • Fixed Claude deleting your most recently updated /team-onboarding guide when asked to delete one without naming which
      • Fixed Claude saying a /team-onboarding guide was deleted when the server refused the delete
      • Fixed the Claude apps gateway hiding Amazon Bedrock's "Input is too long." error, which left sessions failing every turn with "upstream rejected the request" instead of compacting
      • Fixed self-hosted runner sessions losing recent turns or the whole conversation when restarted while a plan waited for approval
      • Fixed "Prompt is too long" after automatic compaction in sessions whose very large CLAUDE.md changed since it was last sent
      • Fixed high memory use and slow startup in headless sessions with many plugins that register commands
      • Fixed stdio MCP servers receiving an empty AWS_BEARER_TOKEN_BEDROCK when their env config sets it to empty; the variable is now unset, so the server can use the machine's own AWS credentials
      • Fixed API requests failing with "unable to get local issuer certificate" behind some TLS-inspecting proxies after a root certificate renewal
      • Fixed very long conversations losing their earlier summary when compaction had to shorten its own request
      • Fixed a PDF's own metadata being able to make Read and @-mentions under-count its pages
      • Fixed DISABLE_PROMPT_CACHING_OPUS and DISABLE_PROMPT_CACHING_SONNET having no effect on [1m], other-region and undated spellings of the default model
      • Fixed /artifacts and the Artifact tool's shared list showing no shared artifacts when you have 200 or more of your own
      • Fixed Claude treating partial Grep and Glob results as complete when a search hit its time limit
      • Fixed OpenTelemetry exports to an https:// endpoint through a proxy never being sent when they started while another export was still in progress
      • Fixed a flood of connection attempts to a proxy that blocks (HTTP 403) OpenTelemetry exports to an http:// endpoint
      • Fixed OpenTelemetry exports hanging indefinitely behind a proxy that never answers; they now time out after 10 seconds, or OTEL_EXPORTER_OTLP_TIMEOUT up to 30 seconds
      • Fixed resumed sessions telling Claude again about a file change it already knew about
      • Fixed Claude sometimes not using a built-in tool in a resumed session after an earlier call failed because the tool was switched off
      • Fixed /remote-control answering "Unknown command" instead of saying that Remote Control is turned off by the disableRemoteControl setting
      • Fixed agent team teammates in tmux or iTerm2 panes starting in auto mode when the lead session was in manual mode
      • Fixed a background session sometimes losing a just-made change of permission mode when it was upgraded or retired
      • Fixed Ctrl+C stopping all running background agents when pressed to clear typed text at the prompt
      • Fixed /feedback showing "Enter to confirm" while a report is being sent
      • Fixed child processes of a stopped shell command sometimes being sent SIGTERM twice, which could make some programs skip their cleanup
      • Fixed claude -p run inside a cloud or self-hosted runner session sharing that session's ID: it wrote into the session's transcript, and a restart could resume the wrong conversation
      • Fixed claude -p run inside a cloud or self-hosted runner session generating a title of its own and sending it to that session
      • Improved the error shown on Microsoft Foundry when Azure credentials can't be loaded: it now says to check or refresh them, and reports as cloud_credential_error
      • Improved /design-sync to say up front when your design system has moved to Claude, and stop before building instead of failing at upload
      • Improved the startup error when a required Claude apps gateway can't be reached: it points to the network instead of a sign-in, and says when the gateway's TLS certificate can't be verified
      • Improved the "Resume this session with" hint shown at exit to repeat the flags you launched with (for example --chrome --debug) ahead of --resume
      • Improved how self-hosted runners recover from server errors: after a 5xx other than 501 or 529, a runner's next poll now opens a new connection instead of reusing the one that failed
      • Improved how self-hosted runner sessions recover from server errors: after a 5xx other than 501 or 529, a session now opens new connections instead of reusing the one that failed
      • Improved how self-hosted runner sessions recover when connections stop answering: after a heartbeat gets no answer, a session now opens new connections instead of trying each idle one in turn
      • Changed SendMessage so a message to a running background agent arrives earlier: its running command moves to the background, without being stopped
      • Changed subagents and teammates on a different model from the main conversation to use that model's saved effort level or its default, instead of the session's effort level
      • Changed exit to skip the "Background work is running" prompt for plugin monitors
      • Changed the built-in plugin-authoring skill to offer once, after a mod you built works, to help share the mod
      • Removed the Read tool's "file unchanged since your last Read" stub: reading an unchanged file again returns its content
      • Windows: Fixed every tool call being refused on some volumes where the native path lookup fails; the working-directory check now compares the folder's identity instead
      • Windows: Fixed the session scratchpad and other temporary paths growing with your project's path length in sessions not started by Claude Desktop, which made repositories cloned into them hit the 260-character path limit
      • Gateway: Fixed the status line and /usage showing a developer's own spend limit as 100% used after their group's pooled budget ran out
      • Self-hosted runner: Fixed Claude not seeing the interrupted tool call when a session moves to a new runner and the turn is older than CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS
      • Self-hosted runner: Fixed an MCP server that was switched off coming back on after the session moved to a new machine, when the session service had refused to save the switch
      • Remote Control: Improved fork names when the app doesn't set one: a long name keeps its "(fork)" ending, and in sessions started with claude remote-control a fork of "Name (fork)" is "Name (fork 2)"
      • [VSCode] Fixed forked conversations dropping messages: only one of the tool calls Claude ran in parallel was kept, and the last messages a compaction kept were lost, which could leave Claude's answer without the question it answered
      • [VSCode] Fixed a message being lost when Claude did not finish starting in time: the extension now starts Claude once more before showing the error
      • [VSCode] Fixed the sign-in screen opening when a request is blocked for its region or network
      • [VSCode] Fixed the Account panel showing the plan name with a lower-cased second word
      • [VSCode] Fixed file links in a Claude tab opening on top of the chat instead of in another editor group
      • [VSCode] Fixed attachment chips, menus, banners and dialogs in the Claude panel staying small when chat.fontSize is raised
      • [VSCode] Fixed ultrathink not raising effort for its turn or showing its rainbow when telemetry is off
      • [Cloud sessions] Added a link card to cloud sessions, so you can open or decline a link an MCP server asks you to visit instead of the request going unseen
      • [Cloud sessions] Changed the organization environment dialog in admin settings to the personal dialogs' short layout: each section opens from a row, and unsaved input asks before closing
      • [Cloud sessions] Fixed adding a network secret for a host that already has one silently replacing it; the Add secret form now refuses and points you to the existing secret
      • [Cloud sessions] Fixed new scheduled tasks ignoring your organization's default environment: the form now starts on the one an admin chose instead of the Anthropic-hosted default
      • [Remote Control] Fixed the next message to an idle session going unanswered after you restart claude remote-control, when you sent it within a minute of your previous message
      • [Claude Tag] Changed newly pasted artifact links in Slack to show a simpler card with an Open button that opens the artifact in Claude, instead of Slack's side panel
    9. πŸ”— Rust Blog Announcing rustup 1.29.3 rss

      The rustup team has published a new point release of rustup, 1.29.3.

      Rustup is the recommended tool to install Rust, a programming language that empowers everyone to build reliable and efficient software.

      What's new in rustup 1.29.3

      This new patch release has fixed some minor regressions over the previous one:

      • Fixed "Illegal instruction" error on certain x86_64 CPUs without SSE4.1. pr#5162

      • Fixed "lock() not supported" error on Solaris. pr#5167

      Further details are available in the changelog!

      How to update

      If you have a previous version of rustup installed, getting the new one is as easy as stopping any programs which may be using rustup (e.g. closing your IDE) and running:

      $ rustup self update
      

      Rustup will also automatically update itself at the end of a normal toolchain update:

      $ rustup update
      

      For this particular release, if you have encountered any issues during self- update, you may try to update rustup manually by following the steps below:

      1. Download the corresponding rustup-init binary for your platform.
      2. Make double sure that no other rustup processes are running.
      3. Replace your existing rustup binary with the downloaded rustup-init renamed to rustup.
        • As a reminder, this binary is often located at $HOME/.cargo/bin/rustup, or $CARGO_HOME/bin/rustup if you have overridden the $CARGO_HOME environment variable.

      If you don't have it already, you can get rustup from the appropriate page on our website.

      Rustup's documentation is also available in the rustup book.

      Caveats

      Rustup releases can come with problems not caused by rustup itself but just due to having a new release.

      In particular, anti-malware scanners might block rustup or stop it from creating or copying files, especially when installing rust-docs which contains many small files.

      Issues like this should be automatically resolved in a few weeks when the anti-malware scanners are updated to be aware of the new rustup release.

      Thanks

      Thanks again to all the contributors who made this rustup release possible!

    10. πŸ”— Ampcode News Service Accounts rss

      Amp now has Service Accounts. A service account is a workspace-owned account that's not tied to a single user.

      Service accounts are created by workspace admins. They have their own API keys and third-party credentials.

      Each thread created under a service account can be viewed by other members of the workspace. These threads are multiplayer too, so workspace members can send messages in them.

      Since anyone in the workspace can drive a service account's threads, make sure to only assign credentials to it that you would be happy bestowing on all workspace members.

      When to Use Service Accounts

      Service accounts fit any work that belongs to the team rather than to one person. For example, threads with automations that workspace members want to have access to, even if the person who set them up is on vacation.

      We've found two patterns where service accounts work especially well.

      Codebase Review and Maintenance

      Reviewing every pull request or keeping docs accurate is work that belongs to the team, not to a single user. When a service account owns that work, anyone on the team can step into its threads and steer them.

      Here are some example prompts for setting that up via Puck:

      • Trigger a Workspace-Scoped Orb for New GitHub PRs
        Hey Puck, let's set up a listener so that any new PR that lands triggers a new orb and reviews the changes. **The orbs should be owned by the whole team, not just me.**
        

        Amp knows how to set up github PR listeners like this. Because the user asked for the threads to be owned by the workspace and not by the user, Amp will use a service account for these threads.

      • A Recurring Review of Public Docs
        Hey Puck, **start a workspace-owned thread** which scans our public documentation every 24hr and checks it's up to date. If you find an issue, @ mention the person responsible for the change.
        

        Service accounts are useful for continuous clean up and maintenance tasks like this, which are shared by a team rather than an individual.

      Programmatic Work

      There's work that starts from a script, like a CI job that spawns a thread via amp -ox every time a build fails. By using a service account's API key for that amp invocation, the thread it starts belongs to the service account instead of whoever set up the pipeline.

      Here's an example:

      • A Review Bot Running in CI
        run_tests
        
        if tests_failed; then
          AMP_API_KEY=<SERVICE_ACCOUNT_API_KEY> \
            amp -ox "Tests failed. Is this a real regression or a flaky test?"
        fi
        

        CI and programmatic invocation of Amp is another useful use case for service-accounts, which should not be tied to any individual user.