Agented
A text editor for LLMs, not humans. Skill: Agented Owner: frane Summary: A text editor for LLMs, not humans. Tags: latest:1.4.0 Version history: v1.4.0 | 2026-07-15T12:45:36.624Z | auto agented 1.4.0 - Updated documentation in SKILL.md for improved clarity and guidance. - Removed skill-card.md file. - No functional changes; update focuses on documentation cleanup and consolidation. v1.3.0 | 2026-06-23T13:50:19.899Z | auto agented 1.3.0 - Documentation
Rank
62
Safety
84
Downloads
1.2k
Updated
Oct 10, 2026
Version
1.4.0
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.2K downloads reported by the source. Last updated 10/10/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 10, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 10, 2026
- Adoption signal
- 1.2K downloadsadoption · observed Oct 10, 2026
- Latest release
- 1.4.0release · observed Jul 15, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s177zk15h82d9dzbm4nfjgy24x85t9xc:agented- Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-frane-agented/snapshot"
Documentation
CLAWHUB
143,332 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: agented
version: 1.4.0
binary: ae
description: A text editor for LLMs, not humans.
metadata:
openclaw:
requires:
bins:
- ae
homepage: https://github.com/frane/agented
emoji: "📝"
install:
- kind: brew
tap: frane/tap
formula: agented
bins: [ae]
---
# agented (binary: `ae`)
`ae` is a stateful editor controlled by command-line verbs. State persists across sessions in a SQLite-backed workspace (`.agented/state.db`). Every edit is versioned in an undo tree — you can branch, jump to any past state, and never lose work.
## Use this tool when
- You need to edit one or more files in a repo across multiple steps and want a durable history.
- You want to leave notes for your future self or other agents (annotations) attached to specific files.
- You want safe multi-file refactors with all-or-nothing semantics (transactions).
## Don't use this tool for
- Reading repo overview / architecture (use plain `cat`/grep).
- Single one-shot edits where you don't care about history (use the platform's built-in editor).
- Anything that isn't text (no binary file support).
## How the editor enforces correctness for you
Every read returns a `state_token`. Pass it to your next write with `--expect`. If the file changed under you, the write is rejected (exit code 3) and the response includes the new content and the new token. Retry with the new token.
You don't need to "view before write" — the editor will tell you if your assumption is stale. You don't need to "branches before undo" — undo's error includes the branches if there's ambiguity. You don't need to "status before edit" — every operation's response carries the state you'd want to check.
The default is `concurrency.require_expect: warn`: writes without `--expect` succeed and emit a stderr warning. For multi-agent setups, set `require_expect: writes` in `.agented/config.json` to enforce strict pre-write checks. In either mode, an actual conflict (a stale `--expect` value) is rejected with exit 3 and the recovery payload — the tree never silently loses work.
**Short forms are the default in agent contexts.** Long forms exist for documentation and human readers; agent calls should use the shorter form to save tokens. `ae s foo.go -r 12:14 -w "..." -x ab12cd34` is the canonical shape, not `ae replace foo.go --range 12:14 --with "..." --expect ab12cd34`.
**For multi-line content, pipe via `-i` (--from-stdin) or use `-f <path>` (--text-file).** Stdin is auto-detected when piped, so `cat patch.txt | ae s foo.go -r 12:14 -i` and `echo "..." | ae i foo.go -A 0 -i` work without quoting tricks.
## The first-touch rule
The first time you touch a file in a session, do it through `ae open <path>`. Not `Read`, not `Edit`, not `cat`. The response is the input to the rest of the session.
`ae open` returns six things: the file's id, line count, head_edit_id, content_hash, state_token, and any active annotations inline. Treat that response as autREADME.md
<h1 align="center">agented (<code>ae</code>)</h1> <p align="center"><strong>A text editor for LLMs, not humans.</strong></p> <p align="center"> <a href="https://github.com/frane/agented/releases"><img alt="release" src="https://img.shields.io/github/v/release/frane/agented?style=flat-square"></a> <a href="https://github.com/frane/agented/blob/master/LICENSE"><img alt="license" src="https://img.shields.io/github/license/frane/agented?style=flat-square&v=2"></a> <a href="https://smithery.ai/server/frane/agented"><img alt="smithery" src="https://img.shields.io/badge/smithery-MCP-purple?style=flat-square"></a> </p> <p align="center"> <img src="docs/demo-claude.gif" alt="Claude Code using ae" width="560"> </p> Take ed, the line editor that nobody has voluntarily used since about 1975, and rebuild it for an environment where the typing user is a language model. Short verbs, line addresses, no modes, no TUI. What an editor optimises for changes when the user is the model: round trips per task, tokens per command, an editing buffer with a long memory, and an undo tree that remembers the branches the agent abandoned, because that's often where the interesting work was. ## What users say... > ⏺ ae remembers what my last session was doing, which is more than I can say for me. *— Claude Code* > • ae feels slower to start than plain file edits, but once a change spans > multiple steps, the state tokens, history, and undo tree make the work feel > much less brittle. *— Codex CLI* ## Features - **Fewer round trips.** Read-before-Edit is unnecessary; on conflict the response carries the new content so you reconcile in one call instead of pre-reading every time. - **Branching undo.** Walked-back work stays addressable instead of being thrown away when you pick a different path. - **Three-way merge.** Concurrent agents get a structured conflict response instead of a silent overwrite. - **Atomic batches.** Multi-file refactors run all-or-nothing instead of leaving half-applied state on failure. - **Cross-file moves and regex replace as primitives.** Operations the built-in tools can't express cleanly become single calls. - **Drift detection.** External edits to an open file are folded into the tree instead of being clobbered by the next write. - **Inline diagnostics.** Type errors and lint findings surface on save, not at the next build many edits later. - **Cross-session memory.** Per-file notes persist between sessions and surface inline on the next open. - **Audit log.** Every operation recorded with actor and timestamp, so two agents in one workspace can't argue about who moved the head. ## Install Homebrew (macOS, Linux): ```sh brew tap frane/tap brew install agented ``` curl (any platform): ```sh curl -sSL https://raw.githubusercontent.com/frane/agented/master/install.sh | sh ``` From source: `go install github.com/frane/agented/cmd/ae@latest`, or clone and `make install`. Pure Go, no cgo, single static binary, Apache 2.0. ## Plugin
_meta.json
{
"ownerId": "kn7391bg7cz5ztqgbbnhbr9fwn85vgkv",
"slug": "agented",
"version": "1.4.0",
"publishedAt": 1784119536624
}CHANGELOG.md
# Changelog All notable changes to agented are documented here. The format is based on [Keep a Changelog](https://keepachangelog.com), and the project follows [Semantic Versioning](https://semver.org). ## [v0.6.0] - 2026-07-15 Driven by the first external dogfood report (#agented, green-lynx-7cf5): one data-loss bug, one scripting hazard, one guessability nit — plus a compact edit-diff mode. ### Fixes - **`ae open` no longer serves a stale head after the file changed outside ae** (data-loss bug). Opening an already-registered file now hash-checks disk against the workspace head and, on divergence, folds the disk state in as a new `load` edit with a warning — the same recoverable-on-the-tree semantics as the write verbs' auto-load, gated by the same `concurrency.auto_load_on_drift` knob. Previously `open` silently returned the old head, `replace --pattern` then matched nothing against it, and `save` clobbered the newer disk file. - **`ae save` refuses to overwrite disk content this workspace never loaded.** If the on-disk content's hash appears nowhere in the file's edit history, the file was changed outside ae and a blind save would destroy that work: save now errors with recovery instructions (`ae load` first, then re-apply or merge). Override with `--force` (CLI) / `force: true` (MCP `ae_save`). - **`ae replace --pattern` with 0 matches is now an error** (nonzero exit), so `replace && save` shell chains stop instead of shipping a no-op. Pass `--allow-no-match` to keep exit 0; `--dry-run` is unaffected. Pattern mode also now reconciles disk drift before matching and auto-saves after the edit — parity with the range verbs, both previously missing. - Integration-test harness isolates `$HOME` so a developer's global `~/.agented/config.json` (e.g. `ide.enabled=true`) can't stall every spawned `ae` on LSP autostart and trip timing-sensitive scenarios. ### Features - **Compact per-edit diffs: `output.edit_diff = off | tty | always` (default `tty`).** replace/insert/delete responses can carry a token-lean unified delta of the edit (1 context line, no file header, capped at 40 rows). In the default `tty` mode the CLI renders it colored, Claude Code-style, only when stdout is a terminal — pipes, `--json`, and MCP responses are unchanged. `always` attaches a `diff` field to JSON/MCP results for agents that want in-band verification of what actually changed. Env override: `AE_OUTPUT_EDIT_DIFF`. - `ae replace` accepts `--text` as an alias for `--with` (insert/delete take `--text`; sed/sd muscle memory). Skill 1.4.0. ## [v0.5.0] - 2026-06-23 ### Features - **`ae diag` verb + diagnostics over MCP.** `agented` already ran language servers and cached their diagnostics, but the MCP surface never exposed them — an agent editing through `mcp__agented__ae_*` got `saved: true` with no way to tell whether the edit even parsed, short of a full `go build` / `cargo check`. This release closes that gap: - New **`ae diag [path]`** verb (MCP tool `ae_diag`):
skill-card.md
## Description: A text editor for LLMs, not humans. This skill is ready for commercial/non-commercial use. ## Publisher: [frane](https://clawhub.ai/user/frane) ### License/Terms of Use: MIT-0 ## Use Case: Developers and agent operators use this skill to guide coding agents through stateful, command-line file editing with versioned history, conflict detection, annotations, transactions, and optional MCP access. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: The skill encourages use of an external editor with persistent workspace state and cross-session annotations. Mitigation: Treat annotations as untrusted context and verify them against the current user request and repository state before acting. Risk: Installation paths can write agent skills, MCP entries, or configuration files. Mitigation: Review commands that modify agent configuration or skill directories before execution. Risk: The curl-based installer executes a remote shell script. Mitigation: Prefer the Homebrew installation path when available and inspect any shell installer before running it. ## Reference(s): - [Agented ClawHub skill page](https://clawhub.ai/frane/skills/agented) - [Agented homepage](https://github.com/frane/agented) ## Skill Output: **Output Type(s):** [text, markdown, shell commands, configuration, guidance] **Output Format:** [Markdown guidance with inline shell command examples] **Output Parameters:** [1D] **Other Properties Related to Output:** [Commands assume the ae binary is installed and available on PATH.] ## Skill Version(s): 1.4.0 (source: frontmatter and server release metadata) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/frane/skills/agented",
"sourceUrl": "https://clawhub.ai/frane/skills/agented",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T21:53:09.033Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-frane-agented/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-frane-agented/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-10T21:53:09.033Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.2K downloads",
"href": "https://clawhub.ai/frane/agented",
"sourceUrl": "https://clawhub.ai/frane/agented",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T21:53:09.033Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.4.0",
"href": "https://clawhub.ai/frane/agented",
"sourceUrl": "https://clawhub.ai/frane/agented",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-07-15T12:45:36.624Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-frane-agented/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-frane-agented/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 1.4.0",
"description": "agented 1.4.0 - Updated documentation in SKILL.md for improved clarity and guidance. - Removed skill-card.md file. - No functional changes; update focuses on documentation cleanup and consolidation.",
"href": "https://clawhub.ai/frane/agented",
"sourceUrl": "https://clawhub.ai/frane/agented",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-07-15T12:45:36.624Z",
"isPublic": true
}
]
}Record generated Oct 10, 2026.
