A governed, local-first AI agent for enterprise Chat, Workflows, Associate, and MCP-connected business systems.
# Add to your Claude Code skills
git clone https://github.com/Foxtailsss-Andy/Anna-AgentLast scanned: 9/4/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-09-04T08:40:25.284Z",
"npmAuditRan": false,
"pipAuditRan": true,
"promptInjectionRan": true
}Anna-Agent is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by Foxtailsss-Andy. A governed, local-first AI agent for enterprise Chat, Workflows, Associate, and MCP-connected business systems. It has 111 GitHub stars.
Yes. Anna-Agent passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/Foxtailsss-Andy/Anna-Agent" and add it to your Claude Code skills directory (see the Installation section above).
Anna-Agent is primarily written in TypeScript. It is open-source under Foxtailsss-Andy on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh Anna-Agent against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.

Anna is a governed, local-first desktop AI agent organized around Home, Cowork, and Crew. This branch preserves the existing product while moving Agent execution into one Node Harness Host and the actual Oh-my-Pi loop.
The migration replaces Agent execution authority, while retaining business state machines, interfaces, and data. Python may serve identity, business storage, and connectors without model credentials or a legacy Agent loop. Integration and live acceptance are tracked separately; a passing unit test does not establish product readiness.
Current branch: Harness Product-Parity Goal | macOS arm64 | MIT License | CI
Earlier release: v0.2.0 Developer Preview, before the default Harness cutover.
中文 | Development diary | Product walkthrough | Quick start | What you can explore | Architecture
The walkthrough records the existing product design retained by the migration. It is not evidence of a live Harness or Hiker run.

One loop across three surfaces: the Create page before a task starts, the complete Cowork Hiker customer-and-contract dashboard, and the Crew workflow canvas. The Hiker view uses synthetic fixture data and contains no real service response, credentials, or business data.
Requirements:
>=22.19.0uv for the managed business adapternpm ci
uv sync --locked --extra dev
ANNA_OMP_BUN_ARCHIVE_URL=https://github.com/oven-sh/bun/releases/download/bun-v1.3.14/bun-darwin-aarch64.zip npm run harness:omp:prepare
npm run desktop:run
Configure the provider and business connectors locally. Model credentials belong to the Node Host; the Python business adapter receives only its business configuration. Keep configuration and application state outside any Agent-readable workdir.
Prepare the fixed Bun/OMP runtime once per fresh checkout. A worker source change requires a newly bound runtime. The launcher must not fall back to the old Python or Pi Agent loop. See DEVELOPMENT.md for configuration, state isolation, and validation.
| Surface | What it demonstrates |
|---|---|
| Home | Chat/Create, shared LoopCard, workdirs, files/canvas, history, execution controls, and Trace. |
| Cowork | Deterministic Hiker dashboards, an Agent assistant, and existing business approval workflows. |
| Crew | Graph x Channel x Memory, assignment, Worker execution, artifact versions, review, and Showcase. |
| Harness | OMP model/tool iteration with Host-owned context, permissions, Memory, canonical events, and Eval. |
This update brings the preserved product onto the new execution path:
Each surface is subject to the current Goal's live acceptance gates. Deterministic tests and demonstration fixtures are not evidence of a live provider or external business operation.
These workflows are part of the product-preservation contract.
Channels are Anna's collaboration layer. A channel keeps people, Anna, and specialist Agents aligned around the same tasks, active Runs, artifacts, mentions, review decisions, and project history. A message can add context, steer an active execution, request a person or Agent, or return the team to the exact task and artifact under discussion.
MCP is Anna's external-system boundary. Anna can use MCP connectors to retrieve operational data, inspect records, and invoke business operations in ERP or other enterprise systems. Read access stays scoped; external writes retain permission checks, human approval, idempotency, read-back verification, and audit evidence when the connected workflow supports them.
The Agent path is Home / Cowork / Crew -> product adapter -> Node Harness Host -> actual OMP -> Host model transport / ToolGateway -> Contract Eval -> terminal event. Business CRUD and connector operations retain their existing domain services. Agent history, Memory loading, and model/tool authority belong to the Harness.
The product workflow retains explicit approval and review boundaries:
flowchart LR
A[Request] --> B[Run]
B --> C[Context + Skill]
C --> D[Model / Tool / MCP]
D --> E{Approval needed?}
E -->|yes| F[Wait / Review]
E -->|no| G[Artifact]
F --> G
G --> H[Trace + Eval]
H --> I[Continue / Rework / Deliver]
The shared runtime is organized around three durable foundations:
When configuration is missing or a connector is unavailable, the state remains visible and recoverable. Anna does not convert an unavailable dependency into a successful result.
Crew turns multi-person work from a message stream into an observable project graph:

The artifact reader keeps the deliverable, source task, project channel, and approval decision in one review surface.
Harness v2 focuses on recoverability and evidence quality:
| Capability | Contract |
|---|---|
| Durable Run / Event Store | Persist canonical state and events instead of relying on one live process. |
| Channel-scoped isolation | Keep workspace and channel boundaries explicit. |
| Tool Gateway | Apply schema, permission, approval, idempotency, and audit controls. |
| Memory policy | Separate proposed memory, confirmed memory, and disabled writes. |
| Trace / Eval | Link context, model calls, tools, approvals, retries, and terminal evidence. |
| Scheduler / fencing | Establish controlled proactive runs, ownership, recovery, and duplicate-execution protection. |
The current migration covers the existing Home, Cowork, and Crew Agent paths, including less visible drafting and matching calls. The separate Preview panel is not the product entry. Old Python Agent execution must not act as a fallback.
| Need | Anna's approach |
|---|---|
| Continue beyond one answer | A Run retains state, events, artifacts, and the next action. |
| Keep automation controlled | External writes retain permission, approval, and audit. |
| Recover from interruption | Waiting, missing configuration, retries, and failure remain explicit states. |
| Review how a result was produced | Trace/Eval evidence connects the execution path to the final artifact. |
| Keep local control | Runtime data stays local by default; external providers and connectors are opt-in. |
| Extend into business domains | Connectors, Skills, and Run Profiles add domain behavior around a shared runtime contract. |
Run the core repository gates:
npm run typecheck
npm test -- --reporter=dot
npm run frontend:smoke
./.venv/bin/python -m pytest -q
npm run build
npm run release:verify
npm run evidence:verify:all
For the desktop packaging smoke:
npm run desktop:package
npm run desktop:smoke-asar
CI runs deterministic gates without a private provider, local runtime state, or signing identity. Python tests cover the retained business services and the disabled legacy-execution boundary. Real provider and Hiker evidence is recorded separately and is never inferred from fixture tests.
This release is useful for: