{
  "schemaVersion": "1.0",
  "item": {
    "slug": "agent-autonomy-primitives",
    "name": "Agent Autonomy Primitives",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/G9Pedro/agent-autonomy-primitives",
    "canonicalUrl": "https://clawhub.ai/G9Pedro/agent-autonomy-primitives",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/agent-autonomy-primitives",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agent-autonomy-primitives",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/adaptation-guide.md",
      "references/template-customization.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/agent-autonomy-primitives"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/agent-autonomy-primitives",
    "agentPageUrl": "https://openagent3.xyz/skills/agent-autonomy-primitives/agent",
    "manifestUrl": "https://openagent3.xyz/skills/agent-autonomy-primitives/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/agent-autonomy-primitives/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Agent Autonomy Primitives",
        "body": "Turn any AI agent into a self-directing worker using five composable primitives: typed memory, task files, project grouping, template schemas, and heartbeat loops."
      },
      {
        "title": "Prerequisites",
        "body": "npm install -g clawvault\nclawvault init"
      },
      {
        "title": "1. Typed Memory",
        "body": "Every memory has a type. The type determines where it lives and how it's retrieved.\n\nTypeDirectoryWhen to Usedecisiondecisions/Recording a choice with rationalelessonlessons/Something learned from experiencepersonpeople/Contact info, relationship contextcommitmentcommitments/Promise made, deliverable owedpreferencepreferences/How someone likes things donefactinbox/Raw information to file laterprojectprojects/Workstream with goals and status\n\nStore with type:\n\nclawvault remember decision \"Chose Resend over SendGrid\" --content \"Lower cost, better DX, webhook support\"\nclawvault remember lesson \"LLMs rewrite keywords during compression\" --content \"Always post-process with regex\"\n\nRule: If you know WHAT KIND of thing it is, use the right command. Dumping everything into daily notes defeats retrieval later."
      },
      {
        "title": "2. Task Primitives",
        "body": "A task is a markdown file with YAML frontmatter in tasks/:\n\n---\nstatus: open\npriority: high\nowner: your-agent-name\nproject: my-project\ndue: 2026-03-01\ntags: [infrastructure, deploy]\nestimate: 2h\n---\n# Deploy API to production\n\n## Context\nServer provisioned. Need Dockerfile fix.\n\n## Next Steps\n- Fix binding to 0.0.0.0\n- Add health endpoint\n- Push and verify\n\nCreate tasks:\n\nclawvault task add \"Deploy API to production\" \\\n  --priority high \\\n  --owner my-agent \\\n  --project my-project \\\n  --due 2026-03-01 \\\n  --tags \"infrastructure,deploy\"\n\nUpdate status:\n\nclawvault task update deploy-api-to-production --status in-progress\nclawvault task done deploy-api-to-production --reason \"Deployed, health check passing\"\n\nStatuses: open → in-progress → done (or blocked)\nPriorities: critical > high > medium > low"
      },
      {
        "title": "3. Project Grouping",
        "body": "Projects group related tasks with metadata:\n\nclawvault project add \"Outbound Engine\" \\\n  --owner pedro \\\n  --client versatly \\\n  --tags \"gtm,sales\" \\\n  --deadline 2026-03-15\n\nTasks reference projects via the project field. Filter tasks by project:\n\nclawvault task list --project outbound-engine"
      },
      {
        "title": "4. Template Schemas",
        "body": "Templates are YAML schema definitions that control what fields exist on every primitive. They live in templates/ in your vault.\n\nSee references/template-customization.md for full customization guide.\n\nKey points:\n\nVault templates override builtins — drop a task.md in templates/ to change the schema\nAdd fields (e.g., sprint, effort, client) by editing the template\nRemove fields you don't need\nChange defaults (e.g., default priority = high)\nValidation is advisory — warns but never blocks"
      },
      {
        "title": "5. Heartbeat Loop",
        "body": "The heartbeat is the autonomy mechanism. Wire it into your agent's periodic wake cycle.\n\nEvery heartbeat (e.g., every 30 minutes):\n\n1. clawvault task list --owner <agent-name> --status open\n2. Sort by: priority (critical first), then due date (soonest first)\n3. Pick the highest-impact task executable RIGHT NOW\n4. Execute it\n5. On completion: clawvault task done <slug> --reason \"what was done\"\n6. On blocker: clawvault task update <slug> --status blocked --blocked-by \"reason\"\n7. If new work discovered: clawvault task add \"new task\" --priority <p> --project <proj>\n8. If lesson learned: clawvault remember lesson \"what happened\"\n9. Go back to sleep\n\nImplementation for OpenClaw agents:\n\nAdd to your HEARTBEAT.md:\n\n## Task-Driven Autonomy\n\nEvery heartbeat:\n1. `clawvault task list --owner <your-name> --status open` → your work queue\n2. Sort by priority + due date\n3. Pick highest-impact task you can execute NOW\n4. Work it. Update status. Mark done. Report.\n5. Check for tasks due within 24h — those get priority\n\nFor cron-based agents, schedule a recurring job:\n\nSchedule: every 30 minutes\nAction: Read task queue, pick highest priority, execute, report"
      },
      {
        "title": "Composing Primitives into Autonomy",
        "body": "The power is in composition, not any single primitive:\n\nWake → Read memory → Check tasks → Execute → Learn → Update memory → Sleep\n         ↑                                      |\n         └──────────────────────────────────────┘\n\nEach cycle compounds:\n\nMemory feeds context into task execution (decisions, lessons, preferences inform how work gets done)\nTask execution generates new memories (lessons learned, decisions made, commitments created)\nLessons improve future execution (mistakes aren't repeated)\nWiki-links ([[entity-name]]) build a knowledge graph across all files\nProjects provide scope boundaries so the agent doesn't drift"
      },
      {
        "title": "Adapting to Your Setup",
        "body": "See references/adaptation-guide.md for detailed patterns on:\n\nWiring primitives into existing agent frameworks (OpenClaw, LangChain, CrewAI, custom)\nChoosing which primitives to adopt (start minimal, add as needed)\nMulti-agent collaboration through shared vaults\nMigrating from other memory systems"
      },
      {
        "title": "Quick Start: Zero to Autonomous in 5 Minutes",
        "body": "# 1. Install and init\nnpm install -g clawvault\nclawvault init\n\n# 2. Create your first project\nclawvault project add \"My Project\" --owner my-agent\n\n# 3. Create tasks\nclawvault task add \"Set up monitoring\" --priority high --owner my-agent --project my-project\nclawvault task add \"Write API docs\" --priority medium --owner my-agent --project my-project\n\n# 4. Wire into heartbeat (add to HEARTBEAT.md or cron)\n# \"Every 30min: clawvault task list --owner my-agent --status open, pick top task, execute\"\n\n# 5. Start working\nclawvault task update set-up-monitoring --status in-progress\n# ... do the work ...\nclawvault task done set-up-monitoring --reason \"Prometheus + Grafana configured\"\nclawvault remember lesson \"UptimeRobot free tier only checks every 5min\" --content \"Use Better Stack for <1min checks\""
      },
      {
        "title": "Anti-Patterns",
        "body": "Don'tDo InsteadStore everything in one big memory fileUse typed memory — decisions/, lessons/, people/Create tasks without owner/projectAlways set --owner and --projectAsk \"what should I work on?\"Read your task queue and decideForget lessons after learning themclawvault remember lesson immediatelySkip marking tasks doneAlways task done --reason — the ledger tracks transitionsCreate tasks for vague ideasPut ideas in backlog/, promote to tasks/ when readyModify template schemas constantlyStabilize schemas early — field renames break existing files"
      },
      {
        "title": "Obsidian Integration",
        "body": "Because everything is markdown + YAML frontmatter, Obsidian renders your agent's workspace as a human-readable dashboard:\n\nKanban board — open all-tasks.base in Obsidian Bases, drag between status columns\nBlocked view — blocked.base shows what needs human input\nBy owner — by-owner.base shows what each agent is working on\nBy project — by-project.base scopes views per workstream\n\nThe same file is both the agent's data structure AND the human's UI. No sync layer needed."
      }
    ],
    "body": "Agent Autonomy Primitives\n\nTurn any AI agent into a self-directing worker using five composable primitives: typed memory, task files, project grouping, template schemas, and heartbeat loops.\n\nPrerequisites\nnpm install -g clawvault\nclawvault init\n\nThe Five Primitives\n1. Typed Memory\n\nEvery memory has a type. The type determines where it lives and how it's retrieved.\n\nType\tDirectory\tWhen to Use\ndecision\tdecisions/\tRecording a choice with rationale\nlesson\tlessons/\tSomething learned from experience\nperson\tpeople/\tContact info, relationship context\ncommitment\tcommitments/\tPromise made, deliverable owed\npreference\tpreferences/\tHow someone likes things done\nfact\tinbox/\tRaw information to file later\nproject\tprojects/\tWorkstream with goals and status\n\nStore with type:\n\nclawvault remember decision \"Chose Resend over SendGrid\" --content \"Lower cost, better DX, webhook support\"\nclawvault remember lesson \"LLMs rewrite keywords during compression\" --content \"Always post-process with regex\"\n\n\nRule: If you know WHAT KIND of thing it is, use the right command. Dumping everything into daily notes defeats retrieval later.\n\n2. Task Primitives\n\nA task is a markdown file with YAML frontmatter in tasks/:\n\n---\nstatus: open\npriority: high\nowner: your-agent-name\nproject: my-project\ndue: 2026-03-01\ntags: [infrastructure, deploy]\nestimate: 2h\n---\n# Deploy API to production\n\n## Context\nServer provisioned. Need Dockerfile fix.\n\n## Next Steps\n- Fix binding to 0.0.0.0\n- Add health endpoint\n- Push and verify\n\n\nCreate tasks:\n\nclawvault task add \"Deploy API to production\" \\\n  --priority high \\\n  --owner my-agent \\\n  --project my-project \\\n  --due 2026-03-01 \\\n  --tags \"infrastructure,deploy\"\n\n\nUpdate status:\n\nclawvault task update deploy-api-to-production --status in-progress\nclawvault task done deploy-api-to-production --reason \"Deployed, health check passing\"\n\n\nStatuses: open → in-progress → done (or blocked) Priorities: critical > high > medium > low\n\n3. Project Grouping\n\nProjects group related tasks with metadata:\n\nclawvault project add \"Outbound Engine\" \\\n  --owner pedro \\\n  --client versatly \\\n  --tags \"gtm,sales\" \\\n  --deadline 2026-03-15\n\n\nTasks reference projects via the project field. Filter tasks by project:\n\nclawvault task list --project outbound-engine\n\n4. Template Schemas\n\nTemplates are YAML schema definitions that control what fields exist on every primitive. They live in templates/ in your vault.\n\nSee references/template-customization.md for full customization guide.\n\nKey points:\n\nVault templates override builtins — drop a task.md in templates/ to change the schema\nAdd fields (e.g., sprint, effort, client) by editing the template\nRemove fields you don't need\nChange defaults (e.g., default priority = high)\nValidation is advisory — warns but never blocks\n5. Heartbeat Loop\n\nThe heartbeat is the autonomy mechanism. Wire it into your agent's periodic wake cycle.\n\nEvery heartbeat (e.g., every 30 minutes):\n\n1. clawvault task list --owner <agent-name> --status open\n2. Sort by: priority (critical first), then due date (soonest first)\n3. Pick the highest-impact task executable RIGHT NOW\n4. Execute it\n5. On completion: clawvault task done <slug> --reason \"what was done\"\n6. On blocker: clawvault task update <slug> --status blocked --blocked-by \"reason\"\n7. If new work discovered: clawvault task add \"new task\" --priority <p> --project <proj>\n8. If lesson learned: clawvault remember lesson \"what happened\"\n9. Go back to sleep\n\n\nImplementation for OpenClaw agents:\n\nAdd to your HEARTBEAT.md:\n\n## Task-Driven Autonomy\n\nEvery heartbeat:\n1. `clawvault task list --owner <your-name> --status open` → your work queue\n2. Sort by priority + due date\n3. Pick highest-impact task you can execute NOW\n4. Work it. Update status. Mark done. Report.\n5. Check for tasks due within 24h — those get priority\n\n\nFor cron-based agents, schedule a recurring job:\n\nSchedule: every 30 minutes\nAction: Read task queue, pick highest priority, execute, report\n\nComposing Primitives into Autonomy\n\nThe power is in composition, not any single primitive:\n\nWake → Read memory → Check tasks → Execute → Learn → Update memory → Sleep\n         ↑                                      |\n         └──────────────────────────────────────┘\n\n\nEach cycle compounds:\n\nMemory feeds context into task execution (decisions, lessons, preferences inform how work gets done)\nTask execution generates new memories (lessons learned, decisions made, commitments created)\nLessons improve future execution (mistakes aren't repeated)\nWiki-links ([[entity-name]]) build a knowledge graph across all files\nProjects provide scope boundaries so the agent doesn't drift\nAdapting to Your Setup\n\nSee references/adaptation-guide.md for detailed patterns on:\n\nWiring primitives into existing agent frameworks (OpenClaw, LangChain, CrewAI, custom)\nChoosing which primitives to adopt (start minimal, add as needed)\nMulti-agent collaboration through shared vaults\nMigrating from other memory systems\nQuick Start: Zero to Autonomous in 5 Minutes\n# 1. Install and init\nnpm install -g clawvault\nclawvault init\n\n# 2. Create your first project\nclawvault project add \"My Project\" --owner my-agent\n\n# 3. Create tasks\nclawvault task add \"Set up monitoring\" --priority high --owner my-agent --project my-project\nclawvault task add \"Write API docs\" --priority medium --owner my-agent --project my-project\n\n# 4. Wire into heartbeat (add to HEARTBEAT.md or cron)\n# \"Every 30min: clawvault task list --owner my-agent --status open, pick top task, execute\"\n\n# 5. Start working\nclawvault task update set-up-monitoring --status in-progress\n# ... do the work ...\nclawvault task done set-up-monitoring --reason \"Prometheus + Grafana configured\"\nclawvault remember lesson \"UptimeRobot free tier only checks every 5min\" --content \"Use Better Stack for <1min checks\"\n\nAnti-Patterns\nDon't\tDo Instead\nStore everything in one big memory file\tUse typed memory — decisions/, lessons/, people/\nCreate tasks without owner/project\tAlways set --owner and --project\nAsk \"what should I work on?\"\tRead your task queue and decide\nForget lessons after learning them\tclawvault remember lesson immediately\nSkip marking tasks done\tAlways task done --reason — the ledger tracks transitions\nCreate tasks for vague ideas\tPut ideas in backlog/, promote to tasks/ when ready\nModify template schemas constantly\tStabilize schemas early — field renames break existing files\nObsidian Integration\n\nBecause everything is markdown + YAML frontmatter, Obsidian renders your agent's workspace as a human-readable dashboard:\n\nKanban board — open all-tasks.base in Obsidian Bases, drag between status columns\nBlocked view — blocked.base shows what needs human input\nBy owner — by-owner.base shows what each agent is working on\nBy project — by-project.base scopes views per workstream\n\nThe same file is both the agent's data structure AND the human's UI. No sync layer needed."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/G9Pedro/agent-autonomy-primitives",
    "publisherUrl": "https://clawhub.ai/G9Pedro/agent-autonomy-primitives",
    "owner": "G9Pedro",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/agent-autonomy-primitives",
    "downloadUrl": "https://openagent3.xyz/downloads/agent-autonomy-primitives",
    "agentUrl": "https://openagent3.xyz/skills/agent-autonomy-primitives/agent",
    "manifestUrl": "https://openagent3.xyz/skills/agent-autonomy-primitives/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/agent-autonomy-primitives/agent.md"
  }
}