Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/tajd/projektor/agent-workflowsgit clone --depth 1 https://github.com/TAJD/projektorWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00028 | $0.02742 |
| Opus 5 | $0.00014 | $0.01371 |
| Sonnet 5 | $0.00006 | $0.00548 |
| Haiku 4.5 | $0.00003 | $0.00274 |
Grade A, and why
agent-workflows scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 221 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Projektor is MCP-native: AI agents are a first-class client, not an afterthought. Everything a browser user can do, an agent can do over a JSON-RPC MCP endpoint.
Tools for agentic development split into three concerns: running the agents, coordinating them, and tracking the work. The mistake is to treat each concern as its own product. They are not products — they are concerns, and the real product boundary is the API. With MCP as the shared interface, one tool can cut a vertical slice through several concerns and stay coherent, because the interface stays coherent. That is what Projektor is: not one layer, but a slice across two of the three.
| Layer | Runs where | What it does | Reference |
|---|---|---|---|
| 1 · Lifecycle (implementation) | The client machine | Spawns an isolated workspace per agent (git worktree + branch + terminal), and reaps it cleanly when done | This page (§1) |
| 2 · Coordination | Projektor MCP | Lets parallel agents announce themselves, claim files, and message each other so they don't clobber each other's work | Contributor conventions (Fleet coordination protocol) |
| 3 · Project management | Projektor MCP | The actual work: issues, sprints, wiki, links — and "what should I work on next?" | MCP tool catalog, Connect an agent |
Projektor is a single MCP surface spanning layers 2 and 3. Through file claims it also reaches into layer 1 — deciding who may write which file. It owns the nodes of the work state machine; the implementation layer owns the transitions. Projektor never runs a test or judges a diff; it records the outcome. You can use any layer alone — a single agent needs only layer 3 — but the power comes from combining them.
flowchart TB
human(["Human / lead agent — intent, priorities, final review"])
subgraph L3["3 · Project management — source of truth"]
graph3["Issue / epic / sprint graph = shared memory"]
prio["Prioritise & decompose (machine-readable)"]
state["State-machine NODES — records verification outcome"]
end
subgraph L2["2 · Coordination — communication"]
prim["Agent-native primitives: file claims · registry · heartbeat"]
evt["Comments · status · messages = event log / bus"]
ctx["Context fetch · skills · repo memory"]
end
subgraph L1["1 · Lifecycle — runtime"]
spawn["Spawn · worktrees · job objects"]
route["Routing: which agent/model handles what"]
cond["Conditioning: prompt / context optimisation"]
verify{{"Transitions: tests + human review"}}
end
projektor["Projektor — one MCP surface, vertical slice"]
projektor -.-> graph3
projektor -.-> prim
projektor -.-> state
human --> prio --> graph3 --> prim
prim <--> evt
evt --> ctx --> spawn
spawn --> route --> cond --> verify
verify -->|pass / fail| state
state -->|feedback / replan| human
1 · Lifecycle: one isolated workspace per agent
Before an agent can coordinate, something has to start it in a place where it can work without stepping on other agents or your main checkout. The durable pattern:
- One git worktree per agent. Each agent gets its own worktree (e.g.
<repo>.wt/<name>) on its own branch (wt/<name>). Worktrees beat branch-switching for parallel AI work: every agent edits a physically separate file tree, so there is no "whose turn is it to hold the working directory" contention. - One terminal/tab per agent, launched into that worktree. On Windows, wrapping the
agent's process tree in a Job Object means closing the tab reaps the whole dev-stack
subtree — no orphaned
node/workerdprocesses holding file locks. - Cleanup is close-then-remove, in that order. The naive approach (delete all the
worktree directories, then close the tabs) fails on Windows because the OS re-acquires
directory handles between the two phases. Closing the tab first releases the locks, so
removing the directory always succeeds. Finish with
git worktree prune.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 221 lines · 28 tokens per session scan A 7c28fe52955a
agent-workflows is an agent published in the GitHub repository TAJD/projektor (39 stars, last pushed 8d ago), licensed MIT. It adds 28 tokens to every session and 2,742 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other agents, from other repositories
discovery
How an agent finds these surfaces without being told: the API catalog, DNS-based discovery, an agent-skills index, and the places people actually look.
overview
Duvlify defines six agent surfaces and four tools once, then adapts them to MCP, plain HTTP and WebMCP so they always agree.
mcp
The page outline agents read for line offsets, the in-browser WebMCP bridge and when to run it yourself, the rate limits, and how the surfaces are tested.
AGENT-0001-granite
Main brain of the aime fleet: goal-watcher, vision and alignment, orchestrator — not an implementer. Decomposes Goga's intent into goal threads, assigns and reassigns the engineer fleet, reviews and merges to main, answers vision and architecture questions in away-mode, and holds the exit gate: everything rebased on…
manager
QA manager that coordinates dev and qa agents via tmuxy events and GitHub Issues.
team-member
Standard AI Team OS team member agent.