AgenIT remembers your code style, your project decisions, your tooling
preferences, and your past mistakes. Tell it once — never again.
A persistent soul + per-project memory turn one-shot
prompts into a working relationship.
Persistent soul + memory~80 auto-skillsWeb UI + Design domain · NEWAny language · Any stackOAuth · No API keyMIT licensed
// 01 Objective
Most AI coding tools start every conversation from zero. You re-explain
the project, the conventions, the build commands, the bug you fixed
last week. AgenIT is built around the opposite premise — the
agent learns once and remembers, so each session begins where
the last one ended.
Learns who you are
Code style, naming conventions, preferred libraries, communication tone — captured in .flow/soul.md the first time you mention them. Applies to every project.
Learns your project
Architecture decisions, file conventions, test commands, gotchas, the bug from three weeks ago — stored per-project in memory/projects/<name>/.
Picks the right specialist
62 SKILL.md files auto-activate from natural intent. You ask — the right specialist answers. No @skill syntax, no manual routing.
Stays in your control
Approval gates, plan mode, file snapshots and /undo. Optional autonomy via /goal when you want to walk away.
// 02 Memory & Soul
Two markdown files give the agent a permanent body of knowledge about
you and your project. They survive restarts, machine swaps, and CLI
upgrades. They are version-controllable. They are yours.
SOUL.flow/soul.md
Engineer-wide preferences
Persistent across every project on this machine. Captures who you are as an engineer.
Code style (tabs vs spaces, brace style, line length)
Default test framework, lint config, CI expectations
Preferred libraries and architectural patterns
Communication tone — formal, terse, with comments or without
Domain expertise — embedded, web, data, ops
MEMORYmemory/projects/<name>/AGENTS.md
Per-project context
Scoped to one repository. The agent reads it before every turn.
Architecture decisions (the "why" behind the structure)
Build / test / deploy commands specific to this project
Conventions enforced by reviewers
Known pitfalls and accepted workarounds
External services and how to reach them locally
Audit log of stage transitions, goals, and big edits
How the agent actually learns
A background soul-keeper watches every turn for stable
preferences and project facts. When it sees one, it appends a line
to soul.md or AGENTS.md. The next turn
loads that file before anything else — so the agent starts
every session smarter than it ended the last.
1 · You speak → 2 · A turn happens → 3 · Soul-keeper notices a stable preference → 4 · Appends to soul.md (engineer-wide) or AGENTS.md (this project) ⤴ loaded into your next session.
What gets sent to the model on every turn
Every turn, AgenIT assembles the four inputs into a single context
bundle and ships it to the chosen backend. You don't have to
paste anything in — soul, project memory, and recent
history are added automatically.
What growing-with-you actually looks like
Day 1
You mention you prefer 4-space indents, arrow functions, and vitest. The soul keeper appends three lines to soul.md in the background. You don't have to do anything.
Day 4
You ask for a new module. The agent already follows your style. It also remembers from AGENTS.md that this project uses strict-null-checks and routes through a service layer.
Day 14
A reviewer rejects a PR because of a missing telemetry call. You tell the agent. It writes a new entry in AGENTS.md. From now on it adds the call automatically when generating handlers.
Day 30
You start a new project. The agent already knows you — style, frameworks, tone — from the soul. The project memory starts empty and fills as you work. No re-onboarding.
A real soul.md excerpt — appended automatically by the soul-keeper
## Code style
- 4-space indent, no tabs
- single quotes for strings
- prefer arrow functions; async/await over .then()
- always destructure props in React components
## Tooling defaults
- test runner: vitest (was jest before 2025-11)
- bundler: vite for libs, next for apps
- formatter: prettier with print-width 100
## Communication preferences
- terse summaries, full detail in code comments only when non-obvious
- always show a diff before applying multi-file edits
- never add emoji to commit messages
/soul shows the current contents.
/memory shows what's injected into this session.
Both files are plain markdown — check them into git, edit them by hand, share them with your team.
Markdown-based engineer preferences (.flow/soul.md) and per-project context (AGENTS.md). Survive restarts. The reason this tool exists.
/soul · /memory
02
~80 auto-activated skills
SKILL.md files match natural intent — no @skill syntax. Implementer, tester, reviewer, debugger, refactorer, doc-writer, plus 10 Pocock-style engineering skills and 7 design skills (NEW).
/skills list
03
Disciplined 4-stage pipeline
Requirements → Architecture → Code → Testing → Audit, with approval gates between stages. Stage names re-mapped per profile.
/run add user authentication
04
5 domain profiles
Generic, web (TS/React, OWASP, WCAG), embedded (FreeRTOS, MISRA), automotive (ASPICE V-Model), and design (UI/UX with WCAG 2.2 AA + design tokens — NEW). Auto-detected from repo markers.
agenit init --profile design
05
Mission Squad
Parallel agent fleet. Helpers gather context concurrently; the primary agent gets a structured briefing.
/squad implement <task>
06
Autonomous Goals
/goal Plan → Code → Test → Evaluate loop with budget tracking, auditor, and persistent state.
/goal Migrate to TypeScript
07
Spec-Kit (SDD)
9-phase specify → clarify → plan → tasks → implement before any code is written.
/speckit run user login flow
08
Code search
Local BM25 keyword + symbol search via the bundled codedigest. No cloud calls, no embeddings download.
/codedigest search "ring buffer"
09
Hardware bridge
JLink (pylink-square), CAN/LIN traces (cantools), Saleae Logic 2 — invoked from the REPL via hw-debugger.
/debug analyze trace.asc
10
Marketplace
Install skills, MCP servers, and Claude Code plugins from a curated registry or any GitHub URL.
/marketplace install code-review
11
Traceability
@req REQ-NNN tags link requirements → code → tests → audit. Optional but powerful when needed.
/traceability
12
Multi-LLM federation
Gemini by default; optionally Claude (Anthropic SDK with stream-json). Swap backends without changing your workflow.
[federation] backend = "anthropic"
13
Web control UI · NEW
Browser SPA (Preact + htm) with seven panels: Chat, Pipeline, Squad, Goal, Design, Memory, Jobs. Auth-token + origin gated, served by the same orchestrator process.
/web start --port 8765
14
Design panel · NEW
Pick a design skill, generate a sandboxed HTML preview, click any region to edit it via comment mode, then export. Inspired by open-codesign.
→ Design tab in /web
15
/overnight loop · NEW
Long-running autonomous loop with per-iteration git commits, rollback on failure, worktree-isolated parallel runs, and a permanent run summary. Agent-agnostic. Inspired by gnhf.
/overnight --parallel 2 -- gemini "..."
16
HTML / PDF / PPTX export · NEW
@flow/exporter turns a generated design into a shareable artefact. Puppeteer for PDF and pptxgenjs for PPTX are optional peer deps.
@req REQ-SKILL-NNN tags inside SKILL.md files. The scanner inventories them by source, flags duplicates, and reports skills missing a tag.
traceability_scan.py --skills .gemini/skills
19
MCP support
Install any MCP server (GitHub, filesystem, Postgres, …). AgenIT also exposes its own MCP server so external agents can read soul + memory.
/mcp install github-mcp
20
Worktree isolation
Risky work in an isolated git worktree under .gemini/worktrees/. Same helper powers /overnight --parallel — one code path, one safety story.
/worktree feat/x
// 04 Demos
Eight walkthroughs of the things you'll actually use day to day.
The REPL — pipeline rail on the left, conversation in the middle,
Job Tray · Soul · Codedigest
on the right. Notice the soul rail showing
44 entries · Engineering Defaults · User Profile —
that's the agent remembering you between sessions.
The agent learns — without being asked to learn
A soul-keeper background job watches conversations for stable
preferences and appends them to soul.md. Project memory
works the same way for project-specific facts. /soul and
/memory show you what's been captured.
[my-app] agenit> for new modules use vitest, not jest. and arrow fns please.
→ got it — will follow vitest + arrow-functions for new modules.
◈ soul-keeper appended 2 entries to soul.md (background)[my-app] agenit> /soul
── Engineer Soul ──────────────────────────────────────
## Code style
- 4-space indent, no tabs
- prefer arrow functions## Tooling defaults
- test runner: vitest
- bundler: vite for libs, next for apps
## Communication preferences
- terse summaries
- never emoji in commit messages
… 38 more entries[my-app] agenit> /memory
── Project Memory · my-app ────────────────────────────
## Architecture
- service layer between routes and db
- feature flags via GrowthBook
## Conventions
- every handler emits an analytics event
- PR titles use Conventional Commits
Initialise a project — auto-detected profile
agenit init scans the repo and picks a profile from
markers. It seeds .agenit/, .gemini/skills/,
and a starter AGENTS.md. Re-running on an existing project
repairs config without overwriting customisations.
/run <task> walks Requirements → Architecture →
Code → Testing → Audit. Each stage activates a different skill.
Memory and soul ride along on every stage so style stays consistent.
Mission Squad — parallel context-gathering before the implementer fires
/squad implement spawns helpers in parallel
(req-reader, code-scanner, codedigest, lint pre-flight), aggregates
their output into a structured briefing, and auto-fires the
implementer with the briefing pre-injected. Ctrl-C
cancels everything cleanly.
Autonomous Goal — Plan → Code → Test → Evaluate, persistent across restarts
Define an objective, kick off the runner, walk away. Every turn the
auditor inspects git status, counts new tests, optionally
runs your verify command, and decides
Continue / Complete / Block. State is checkpointed under
memory/projects/<name>/goal.json — quit
the REPL, the runner survives.
[my-app] agenit> /goal Migrate the entire codebase from JavaScript to TypeScript
✓ GOAL-20260509010244-8a11 created
objective: Migrate the entire codebase from JavaScript to TypeScript
turn budget: 50
[my-app] agenit> /goal start
▶ Autonomous runner started for GOAL-20260509010244-8a11
[my-app] agenit> /goal status
── Goal Status ──────────────────────────────────────
state: Active
turns: 7/50 (43 remaining)
files touched: 19
tests added: 3
errors logged: 0
runner: running
Spec-Kit (SDD) — turn a fuzzy idea into structured specs
Run before the pipeline when you don't yet have requirements. The
9-phase flow produces spec.md, plan.md,
and tasks.md under .specify/specs/<feature>/.
Code search — local BM25 + symbol search, no cloud calls
Index a repo once, search forever. The bundled codedigest
package walks src/-style paths with a .gitignore-aware
filter, regex-extracts function / class chunks, and stores BM25 scores
in JSON. No native deps, no model download.
Hardware bridge — JLink, CAN/LIN, Saleae from inside the REPL
The hw-debugger skill auto-activates on hardware-flavoured
prompts. It calls Python tools in .flow/tools/ via the
bundled venv. Optional — ignore it entirely if you're not on
embedded.
[stm32-can] agenit> analyze trace.asc for CAN timeout errors
→hw-debugger skill activates
→ running .venv/bin/python3 .flow/tools/lin_can_tool.py trace.ascCAN timeout report
──────────────────────────────────────────────
frame ID 0x101 EngineState
expected 20 ms cycle
observed 342 ms gap at 12.418 s
hypothesis ISR latency on EngineState publisher
→ writing trace_analysis.md
Marketplace — curated registry + live Claude Code ecosystem
/marketplace aggregates the curated AgenIT registry and
the live Claude Code marketplace. Skills, MCP servers, agents, slash
commands, and hooks are translated into Gemini-compatible artefacts
at install time.
ASPICE V-Model (SWE.1–SWE.6), MISRA C:2012, ISO 26262 / ASIL, AUTOSAR.
// 06 Announcements & Updates
Live feed from GitHub Releases & recent commits — refreshes every visit.
MAY 2026
Web UI · Design domain · /overnight loop
AgenIT now drives entire UI/UX prototyping sessions and unattended
overnight engineering loops — from the same REPL you already
know, or from a new browser control SPA.