The NetEase page timestamps Kazik's post at 2026-11-04T08:23:35+08:00, which is 08:23 in Beijing. The post announces that a year of work on an agent automation system is now public under the name Agent-Autoloop, at github.com/KKKKhazix/agent-autoloop. The GitHub release v1.0.0 carries the timestamp 2026-11-03T21:58:04Z, which is 05:58 the same morning in Beijing, earlier than the syndicated clock. The post says the system was not open source on Monday, and that the rewrite took two days. The WeChat original stopped on a verification page, so the account below follows the NetEase page and the repository README.

[1][2]
Architecture diagram with the kernel in the center and plugins around it
Image source: docs/architecture.svg in the Agent Autoloop repository. The kernel is in the center. Event, agent, channel, and delivery plugins sit around it., docs/architecture.svg in the Agent Autoloop repository

The README describes the kernel as about 1,650 lines with zero runtime dependencies. It does not read the system clock, does not use random numbers, and does not make outbound requests. Plugins connect inward, and the same inputs produce the same result. The post limits the kernel to four jobs: accept an event, assign it by rule, hand it to an agent, and record each step. Event sources, agents, notification channels, and the code-delivery pipeline sit outside the kernel as replaceable plugins. The post names Claude Code, Codex, and agents that support ACP as ready to use. The README says the system supports macOS and Linux and needs Node 24 before it will run. The listed channels are Feishu, DingTalk, WeCom, Slack, and Discord, plus desktop notifications.

[1][2]

The README's measurement table names the machine: an Apple M5 Pro with 24 GB of memory, running Node 24.21.0. Writes are committed one by one, and the system answers only after the transaction has reached disk. The table lists a cold start of 88.78 milliseconds, idle memory of 59.94 MB RSS, 170.49 MB RSS for 1,000 simultaneous long polls, 2,394 persisted writes per second, and a dispatch p99 of 1.82 milliseconds. Startup with 1.1 million facts is 99.8 milliseconds. The kernel line count, including blank lines and comments, is 1,651, and runtime dependencies are 0. The same passage says the pass line was set on this machine, and another machine may fail it. The post's own stress test rounds the same phenomena to a start under 0.1 seconds, about 60 MB at rest, about 170 MB with 1,000 connections, dispatch in about 1.5 milliseconds, about 1,600 lines, and no third-party dependencies. Both sets of figures are the author's measurements, not a third-party rerun.

[1][2]

The README names four mechanisms. Suspend-at-zero-cost exits the process while a decision is pending and stores the wait in a database, so no agent process runs and no tokens are spent during the wait. Event sourcing computes state from an append-only log. The log and the index are written to disk in one transaction, and the system answers only after that write. The README says a killed process does not drop records that were already confirmed, and the same sentence notes that a full power loss was not tested separately. The post also says recorded items survive a power loss. That sentence goes further than the README, which did not run that test. Instruction-data separation keeps external text, such as an issue title and body, in a file and out of the prompt. The prompt carries only a type, an identifier, and a link whose characters have been checked. An event that includes a directory, an agent name, or an access field is rejected. The post says this can block some prompt injection, and it does not state which inputs are covered. Hop limiting adds one layer each time an agent wakes another. A human question or a scheduled recheck does not reset the count, and the agent cannot change it. Past 8 layers the system only records the event, stops assigning work, and sends a card.

[1][2]

The post uses the author's own company as the example. Colleagues had already submitted more than eighty comments. Claude changed nearly 70 of them on its own, and the author decided about a dozen. For requests the system can handle automatically, the post says the change is finished, the colleague is told, and the result is live within one hour. That is the author's account of in-house use, not an outside audit. The same post calls the release 1.0.0 and says many rough edges remain, including bugs. The delivery section says review and release trust only the copy on the main branch, and code inside a pull request does not run on the author's computer.

[1][2]

The README also says that as history grows, state summaries slow down, and the log and index keep using disk. After a format change, the first startup rebuilds from the full log. 1.1 million entries took 43.1 seconds. The hub calls a command-line tool that is already installed and signed in on the machine. It does not read or store account credentials, and model usage is billed to that account. The project states that it is an independent open-source project and has no affiliation or endorsement from the model vendors named in the text. The repository page lists the MIT license. Those limits are in the repository notes. The announcement post does not repeat the measurements.

[1][2]