Loading...
Loading...
Framework-agnostic persistent memory and self-improvement loops for AI agents. Scaffolds shared state, task queues, and learnings files that can be read/written by Claude, Gemini, and Antigravity. Use this to initialize an Agentic OS layer in any workspace and instruct agents on how to use it.
npx skill4agent add baphomet480/claude-skills agentic-os.agent/bash ~/.agents/skills/agentic-os/scripts/init-os.sh.agent/
├── state/
│ ├── last-run.json # Global log of the last agent actions
│ ├── tasks.json # Shared queue of pending/completed tasks
│ ├── errors.json # Log of unresolved task failures
│ └── status.md # Output of the command-center skill
├── learnings/ # Per-skill feedback loops
│ └── template.json
└── evals/ # Per-skill evaluation criteria
└── template.json.agent/.agent/state/last-run.json.agent/state/tasks.jsonwrite-draft.agent/learnings/write-draft.jsonrule_change.agent/evals/<skill>.jsoneval.jsonpython3 ~/.agents/skills/agentic-os/scripts/eval.py list --skill <skill>python3 ~/.agents/skills/agentic-os/scripts/eval.py verify --skill <skill> --task-id <id> --notes "..."python3 ~/.agents/skills/agentic-os/scripts/learn.py add --skill <skill> --worked "..." --didnt "..." --rule "...".agent/state/last-run.jsontasks.jsoncompletedlast-run.json{
"timestamp": "2026-04-25T12:00:00Z",
"task_id": "task-123",
"status": "completed",
"description": "Built the new Hero component.",
"assigned_skill": "build-component",
"project_id": "generic-service",
"agent_id": "antigravity",
"user_id": "matthias",
"outcome": {
"result": "Success"
},
"trace_id": "req-12345",
"decision_log": "Used standard Tailwind utility classes instead of custom CSS for faster rendering"
}errors.jsoncommand-center[
{
"timestamp": "2026-04-25T12:05:00Z",
"task_id": "task-124",
"assigned_skill": "osint",
"reason": "Target API returned 429 Too Many Requests after 3 retries",
"trace_id": "req-12346",
"decision_log": "Attempted to backoff but exceeded max wait time.",
"resolved": false
}
]learnings.json{
"skill": "build-component",
"history": [
{
"date": "2026-04-21",
"what_worked": "Extracting the SVG into a separate file kept the component clean.",
"what_didnt": "Trying to use Next.js Image for inline SVGs caused layout shifts.",
"rule_change": "Always put complex SVGs in a separate .tsx file and import as a React component. Do not use next/image for vectors."
}
]
}eval.json{
"skill": "build-component",
"criteria": [
"Component must be responsive down to 320px",
"Must not use inline styles",
"Must be exported as a default export"
]
}