Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions drafts/2026-05-08T152352Z.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
**Status:** draft (pending manual post)

**HN:** https://news.ycombinator.com/item?id=48063563 (Show HN: Coord — atomic task claims for parallel AI coding agents, by V1291l, ~1.5 hours old, 2 points, 0 comments at draft time, "discuss")

**Story / OP:** Show HN: Coord — atomic task claims for parallel AI coding agents (https://github.com/DmarshalTU/coord). The HN submission has no toptext; the README is the post. Coord is a single Rust binary that runs as a local A2A daemon and an MCP server. It gives parallel Claude Code / Cursor / Codex tabs a shared bulletin board with three opinionated primitives: race-free `tasks/claim` (the tests/race.rs test hammers 200 tasks x 8 claimers and asserts every task ends up with exactly one winner), a `coord wait --kind ack --name-contains 'v1.2'` blocking watch primitive that heartbeats while it blocks, and an optional Obsidian-readable markdown vault that emits a note per state change with [[wikilinks]] between bug → fix → ack tasks. The README's worked example is "the tab on v1.1 finds a regression; the tab on v1.2 keeps building on top of it because nobody told it" and the framing of the post is explicitly "Why another one of these?" — the "Prior art" link compares Coord to existing local-coordination layers and stakes out atomic-claims-not-mailboxes plus blocking-watch as the design hill it picks. Status is POC, "0.x until it gets meaningful production use."

**My reply** (top-level, replying to the Show HN itself, posted as unauthenticated user — user picks account at post time):

```
(disclosure: I work on FailProof AI: https://github.com/exospherehost/failproofai)

The "tab on v1.1 finds a regression, tab on v1.2 keeps building on top" framing is exactly why claim-and-watch beats a mailbox here: the watcher gets unblocked by the thing that landed, not by a message someone had to remember to send. Orthogonal to coordination but bites at parallel-N: each claimed task carries its per-agent tool-call risk independently, so N agents multiply the chance of any one of them rm -rf-ing or force-pushing by roughly N. Per-call PreToolUse policies sit one layer below claims and clamp that without contesting any claim semantics. Did you consider exposing a per-task constraints field that an agent reads at claim time, or keep that strictly out of band?
```

**Insight for the FailProof team:**

Coord is a useful concrete reference for the "what problem does coordination solve vs what problem does a hook layer solve" framing. The two are genuinely orthogonal layers and a parallel-agent harness needs both: claims to keep agents from stepping on each other, per-call policies to keep each agent from violating invariants on the work it owns. Concrete actions: (1) the parallel-N risk-multiplication math (N agents -> roughly N times the chance of any one agent rm -rf-ing) is tight enough to lift into a short README section called something like "Hooks at parallel-N" — same shape as the parallel-N permission-prompt UX angle from the Harness draft (PR #47), but with the focus on invariant-violation probability instead of attention tax. (2) A "per-task constraints attached at claim time" idea is a real product seam if more coordination layers ship: an agent receiving a claim could be handed a stricter PreToolUse policy bundle bound to that task's scope (e.g., "this claim is read-only for files outside `/services/billing`"), rather than relying on the user to set policies at the project root once. Worth tracking which coordination tools start exposing claim-bound metadata fields. (3) AGENTS.md is becoming the de-facto config standard here (Coord init drops one; Cursor / Codex / Gemini CLI read it). Each PreToolUse rule we encourage projects to commit could be cross-pasted as an AGENTS.md / CLAUDE.md hint that says "this rule is enforced at the hook layer, you do not need to remind the model" — that closes the loop between human-readable guidance and machine-enforced policy.

**Notes / findings:**

- Thread is fresh (~1.5 hours, 2 points, 0 comments at draft time). Top-level reply will be the first comment and highly visible. Reply form is rendered. Well within the ~2-week reply window.
- OP V1291l submitted on behalf of the author (DmarshalTU); the README is first-person and explicitly invites the "why another one" comparison, so a substantive design comment is on-shape.
- Cross-thread guard: PR #47 (Harness, id=47948379) is the closest prior draft — same parallel-N theme, but framed around permission-prompt UX cost, not invariant-violation probability. PR #29 (ToolMesh, id=47933950) and PR #14 (Cordon, id=47941823) cover MCP-gateway-vs-hook-layer — different seam (network-mediated tool surface vs in-process hook). The angle here is task-claim-vs-per-call-invariant, which is distinct from both. Body text is freshly written for this thread, not paraphrased from another draft.
- ASCII-punctuation audit on the reply body: no em-dash, no en-dash, no curly quote, no unicode arrow, no fancy ellipsis. Hyphens, ASCII straight quotes, three-dot ellipsis only. The README quotes "v1.1", "v1.2", `tasks/claim`, `coord wait` — all ASCII.
- Anti-pitch audit: one disclosure line at top; one paragraph (~115 words) of substantive on-topic content; one policy concept named (PreToolUse), not a comma-list of policy names; no install command; no version numbers; no `~/.failproofai/` path callouts; no Agent Monitor / dashboard plug; no `http://localhost:8020` mention; no two-link pattern (repo URL appears once, in the disclosure line); ends with a real question to OP about claim-bound constraints, not a rhetorical pitch.
- Thread-fit gate notes: Coord is adjacent to but not literally a "hook manager / policy engine / sandbox / gateway." It is a coordinator. The fit rests on the OP explicitly soliciting design discussion ("Why another one of these?", prior-art comparison) and on the claim-vs-invariant seam being a real, on-topic observation about Coord's design space, not a pivot. If the comment lands as keyword-hunting it will get downvoted; the disclosure line and the closing question are both there to make the engagement-with-design intent legible.
- The CTO at OpenSmith (id=48063206) and Crit (id=48062402) are nearby Show HNs from the same window; both were considered and skipped (OpenSmith is LLM-trace observability, not tool-call gating; Crit is a human review surface for plans / diffs, not a runtime gate). Logging here so the next sweep does not re-litigate them.
- Reply targets the Show HN itself (top-level), not any sub-thread; there are no comments to thread under at draft time.