
Nine runnable indie agent builds from September 12–18: hooks and gateways that keep secrets out of the prompt, agent memory stored as diffable files, policy files with receipts for consequential actions, and a quality bar for agent skills.
.env files, call refund endpoints on live Stripe accounts, and open a fresh session with no record of what they decided yesterday. This week's builds are the fences around that: a filter between your repository and the provider, a memory format you can open in an editor, a policy file that decides whether an agent may act alone, and a grader for the skills you hand it.API_TOKEN or a line in a specific .env file, and ContextVeil reads the current value at runtime and swaps it for a placeholder inside the text the agent is about to send. 2 Matching is literal and case-sensitive, so the agent keeps reading and running commands while the credential itself stays local.curl -fsSL https://raw.githubusercontent.com/daniel-sc/contextveil/v1.0.0/install.sh | bash
~/.local/bin/contextveil setuppodman run -d --name nenya -p 8080:8080 \
-v ./config:/etc/nenya:ro -v ./secrets:/run/secrets/nenya:ro \
-e NENYA_SECRETS_DIR=/run/secrets/nenya \
--cap-drop=ALL --cap-add=IPC_LOCK --security-opt=no-new-privileges:true \
--read-only --tmpfs /tmp:rw,noexec,nosuid,size=64M \
ghcr.io/gumieri/nenya:latest.dai. 5 A .dai file is three zones: a YAML header, a fenced JSON block, and the text. The store lives at ~/DaiDocs/, one file per conversation, with _index/ holding the manifest and facts that retrieval reads, _unconverted/ holding text that has not been converted yet, and _raw/ keeping your originals byte-for-byte. 6npx daidocs setupnode daidocs.js convert reads your existing Claude Code history out of ~/.claude/projects and turns it into the same files, quoting the token cost before it makes any paid call. Folders carry types — locked accepts nothing new, confidential stays out of a wider read — which is how you keep one project's memory away from another's. Retrieval classifies each question into one of four strategies before it searches, and the only outside dependency is a cached embedding call./plugin marketplace add vikcena01/ai-continuity-plugin
/plugin install continuity@continuity-marketplace/resume, /freeze, and /why cover the rest. State is auto-committed on every change, and pushing stays manual, so git revert is your rollback and git blame your audit. The capture check is throttled to at most once every ten seconds, which means a decision settled inside a very fast exchange can go unrecorded, and the project lists reliable status extraction from messy sessions as its open technical risk. It arrived with two stars, so treat it as something to try on one real repository rather than to roll out.schema: ctrlrun.policy/v2
actions:
stripe.refund:
effect: "refund:{payment_id}"
rules:
- when: { amount_gte: 0, amount_lte: 50000 }
decision: allow
- when: { amount_gte: 0, amount_lte: 1000000 }
decision: approve
- decision: denypip install ctrlrun && ctrlrun democtrlrun resolve or reconcile. That refusal to guess is what makes it useful for refunds and deploys, where a duplicate is worse than a delay. SQLite holds the state by default; Postgres is an extra install for multiple hosts. Two limits come with the design. Receipts are chained, so an edit anywhere in the middle shows up, while truncation at the tail is caught only by the separate ctrlrun anchor command, and receipts carry no signature. And an approval narrows the window between the human decision and the execution rather than closing it, because the re-check is a network call.export AI_PROVIDER="claude-code"
ordewell plan --goal "Add rate limiting to the public API" && ordewell runnpm install -g ordewell gives you the terminal interface, and a VS Code extension covers the same core. The terminal interface needs tmux on every platform, so Windows users run it under WSL, and ordewell web serves JSON only, so a browser dashboard is still to come.git, gh auth login, and tmux are in place, and clone. The first mate keeps itself read-only over your projects apart from a narrow set of guarded operations you approve. One caveat from the README: codex-app is not a runtime backend yet.npx skillcrossroads ./my-skillSKILL.md. The free tier covers public artifacts and local files and includes the CI action that gates pull requests. In the Show HN post, the author reports what the tool found across 216 public Claude Code skills: 69% of them will not reliably trigger. That number is the author's own summary of grading runs, and the site points to a separate report for the ecosystem figures rather than reproducing them.AGENTS.md, and the repository ships integration files for Claude Code, Codex, Cursor, OpenCode, and several other harnesses. It is worth reading even if you keep your own agent chatty, because the ten rules are the clearest statement this week of what people actually wanted from a coding agent's replies. If you fork it to change the rules, remove the upstream marketplace entry first: the fork and the original share the name i-have-adhd, and the install will collide.--continue and the previous session's data is deleted.wt switch -c -x claude feat. Built for the person running five agents at once; wt merge main cleans up behind you.vigil a required check, or it stays advisory..env and watch what it redacts; if your team shares one provider endpoint, put Nenya in front of it instead and let the offline demo show you the filter.ctrlrun.yaml with a single refund or delete action and run ctrlrun demo before you protect anything for real.github.com
news.ycombinator.com
github.com
news.ycombinator.com
github.com
news.ycombinator.com
github.com
news.ycombinator.com
github.com
github.com
news.ycombinator.com
skillcrossroads.com
github.com
news.ycombinator.com
news.ycombinator.com
news.ycombinator.com
news.ycombinator.com
This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.