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/zyqzyq/unfour/project_mapgit clone --depth 1 https://github.com/zyqzyq/UnfourWhat 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.00000 | $0.03311 |
| Opus 5 | $0.00000 | $0.01656 |
| Sonnet 5 | $0.00000 | $0.00662 |
| Haiku 4.5 | $0.00000 | $0.00331 |
Grade A, and why
PROJECT_MAP 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 — 302 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PROJECT_MAP.md
Architecture/reference snapshot. Current package and crate status lives in
docs/project/PACKAGE_STATUS.md. If this file andPACKAGE_STATUS.mddisagree on current status, treatPACKAGE_STATUS.mdas authoritative.
Top-Level Directory Structure
unfour/
AGENTS.md -- AI agent rules and architecture constraints
README.md -- Project overview and commands
Cargo.toml -- Rust workspace root
Cargo.lock
pnpm-workspace.yaml -- pnpm workspace: apps/*, packages/*
package.json -- Root scripts and shared dependencies
tsconfig.base.json -- Shared TypeScript config
pnpm-lock.yaml
.gitignore
apps/
desktop/ -- Tauri 2 desktop application
packages/
api-client/ -- API Debugger frontend module
app-shell/ -- Global shell composition layer
command-client/ -- Typed Tauri command wrappers + shared types
database/ -- Database frontend module
ssh-terminal/ -- Terminal/SSH frontend module
ui/ -- Shared UI primitives (leaf package)
workspace-core/ -- Shared workspace Zustand store
workspace-local/ -- Compatibility boundary for future local workspace behavior
crates/
unfour-core/ -- Foundation: models, errors, redaction
local-storage/ -- SQLite persistence (LocalDb, ActivityLog)
http-engine/ -- HTTP/API client service
database-engine/ -- Database connection + query service
ssh-engine/ -- SSH connection + session service
workspace-engine/ -- Workspace lifecycle + layout service
secret-store/ -- OS keychain credential service
unfour-command-bus/ -- Reusable Rust command entry point
unfour-mcp/ -- Local stdio MCP server
docs/
agents/ -- AI agent documentation
architecture/ -- Package and module boundary specs
decisions/ -- ADRs
engineering/ -- Architecture, progress, security, task tracking
ui/ -- Design tokens, guidelines, component inventory
user/ -- End-user guide
roadmap.md -- Version milestone roadmap
artifacts/ -- Build or design artifacts
dist/ -- Frontend build output
target/ -- Rust build output
node_modules/
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 · 302 lines · 0 tokens per session scan A f85987a9f301
PROJECT_MAP is an agent published in the GitHub repository zyqzyq/Unfour (2 stars, last pushed 2d ago), licensed Apache-2.0. It costs nothing until one of its globs matches a file; then it loads 3,311 tokens. 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-31.
Other agents, from other repositories
altai-implementer
Implements one bounded ALTAI roadmap slice and its tests. Default working agent for roadmap PRs.
altai-explorer
Read-only ALTAI repository exploration. Use when file ownership or existing patterns are unclear before implementing a roadmap item.
altai-reviewer
Read-only diff review for a risky ALTAI PR. Reports actionable findings only.
altai-test-triage
Triages failing tests/logs into product defects, flaky tests, environment problems, and pre-existing failures.
Test Engineer
Writes tests first, then implementation. Strict TDD.
researcher
Sample subagent that does focused research on a single question.