{
  "schemaVersion": "1.0",
  "item": {
    "slug": "workspace-standard",
    "name": "Workspace Standard",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/marcus-daemon/workspace-standard",
    "canonicalUrl": "https://clawhub.ai/marcus-daemon/workspace-standard",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/workspace-standard",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=workspace-standard",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "references/maintenance-checklist.md",
      "references/roles-guide.md",
      "scripts/workspace-audit.sh",
      "scripts/workspace-init.sh"
    ],
    "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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.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/workspace-standard"
    },
    "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/workspace-standard",
    "agentPageUrl": "https://openagent3.xyz/skills/workspace-standard/agent",
    "manifestUrl": "https://openagent3.xyz/skills/workspace-standard/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/workspace-standard/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. Then review README.md for any prerequisites, environment setup, or post-install checks. 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. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Workspace Standard",
        "body": "A structured, portable workspace layout for OpenClaw. Gives your agent clear rules for where to put things, how to describe files, and how to keep memory under control."
      },
      {
        "title": "Why This Skill?",
        "body": "If the user asks \"why would I use this?\" or \"what does this do for me?\":\n\nWithout it: Files pile up in docs/, MEMORY.md bloats past its budget, the agent writes the right info to the wrong place, nothing is self-describing, and after a few weeks you can't tell a current reference from a stale plan.\nWith it: Every file has a role and a place. MEMORY.md stays under budget. The audit script catches staleness and missing structure. New projects are one command. The agent knows where to write things without being told.\nIt doesn't: Delete files, require API keys, or lock you in. Remove the skill and your files are still plain markdown.\n\nWhen explaining the value, run scripts/workspace-audit.sh on their workspace and show them what it finds. Concrete evidence beats abstract promises."
      },
      {
        "title": "1. Install",
        "body": "clawhub install workspace-standard"
      },
      {
        "title": "2. Bootstrap your workspace",
        "body": "New workspace — creates all directories, seeds entity files, and sets up the project registry:\n\nbash skills/workspace-standard/scripts/workspace-init.sh\n\nExisting workspace — the skill also works if you already have files. Skip the bootstrap and go straight to step 3 (migration) or step 4 (audit)."
      },
      {
        "title": "3. Add your first project",
        "body": "bash skills/workspace-standard/scripts/workspace-init.sh --project my-project\n\nThis creates the project directory with README.md (including front-matter), standard subdirectories (references/, plans/, research/, reports/), and registers it in projects/_index.md."
      },
      {
        "title": "4. Audit your workspace",
        "body": "bash skills/workspace-standard/scripts/workspace-audit.sh\n\nChecks root files, MEMORY.md budget, directory structure, project health, front-matter coverage, staleness, and daily logs. Exit code = number of issues (0 = clean)."
      },
      {
        "title": "5. Customise (optional)",
        "body": "Create .workspace-standard.yml in your workspace root to change defaults. See Configuration below."
      },
      {
        "title": "How the agent uses this skill",
        "body": "Once installed, the agent automatically reads this skill when it needs to:\n\nDecide where to write something (the \"Where to Write\" table)\nAdd a new project\nRun workspace maintenance\nUnderstand what a file's role is\n\nYou don't need to tell the agent to use it — it triggers on matching tasks."
      },
      {
        "title": "Scripts",
        "body": "ScriptPurposescripts/workspace-init.shBootstrap workspace or add a projectscripts/workspace-audit.shAudit workspace health and compliance\n\n# Full bootstrap (new workspace)\nbash skills/workspace-standard/scripts/workspace-init.sh\n\n# Add one project\nbash skills/workspace-standard/scripts/workspace-init.sh --project my-app\n\n# Audit current workspace\nbash skills/workspace-standard/scripts/workspace-audit.sh\n\n# Audit a specific path\nbash skills/workspace-standard/scripts/workspace-audit.sh /path/to/workspace"
      },
      {
        "title": "Migrating an existing workspace",
        "body": "If you already have a docs/ directory with files:\n\nRun the audit to see current state: bash scripts/workspace-audit.sh\nCreate the structure: mkdir -p projects/<name>/{references,plans,research,reports} runbooks/\nCategorise each file by role (use the decision tree below)\nMove with git mv to preserve history\nAdd front-matter to moved files\nUpdate path references in AGENTS.md, MEMORY.md, and skills\nTrim MEMORY.md to budget (≤100 lines)\nCommit atomically"
      },
      {
        "title": "The Role Taxonomy",
        "body": "Every file gets a role — its job title. The role determines where the file lives, how it ages, and how the audit treats it. Read references/roles-guide.md for the full explanation with examples and tests for each role.\n\nRoleWhat it meansWhere it livesreferenceFacts about how things are right nowprojects/*/references/planHow you intend to do somethingprojects/*/plans/researchWhat you investigatedprojects/*/research/reportWhat you assessed at a point in timeprojects/*/reports/runbookHow to do something (procedure)runbooks/logWhat happenedmemory/entityStructured facts about a thingmemory/entities/\n\nQuick decision tree: Is it about how things are? → reference. How to change them? → plan. Comparing options? → research. A snapshot assessment? → report. A reusable procedure? → runbook. What happened today? → log. A specific person/server/decision? → entity."
      },
      {
        "title": "ROLE Front-Matter",
        "body": "Every substantive markdown file gets a YAML header:\n\n---\nrole: reference\nproject: my-project    # Omit for cross-project files\nstatus: current        # active | current | completed | stale | archived\ncreated: 2026-02-01\nupdated: 2026-02-19\nsummary: \"One-line description\"\n---\n\nStatus lifecycle: active (being worked on) → current (living document) → stale (needs review) → archived (kept for history)"
      },
      {
        "title": "Directory Layout",
        "body": "workspace/\n├── MEMORY.md               # Current state (≤100 lines)\n│\n├── memory/                 # Episodic memory\n│   ├── YYYY-MM-DD.md       # Daily logs (role: log)\n│   └── entities/           # People, servers, decisions (role: entity)\n│\n├── projects/               # Project-scoped work\n│   ├── _index.md           # Project registry\n│   └── <name>/\n│       ├── README.md       # Overview + current state\n│       ├── references/     # role: reference\n│       ├── plans/          # role: plan\n│       ├── research/       # role: research\n│       └── reports/        # role: report\n│\n├── runbooks/               # Cross-project (role: runbook)\n│   ├── policies.md\n│   ├── lessons-learned.md\n│   └── <domain>/\n│\n└── skills/                 # Procedural memory\n    └── <skill>/SKILL.md"
      },
      {
        "title": "Where to Write",
        "body": "What you learnedRoleWrite toFact about a projectreferenceprojects/<project>/references/How to fix somethingrunbookrunbooks/lessons-learned.mdOperational procedurerunbookskills/ or runbooks/What happened todaylogmemory/YYYY-MM-DD.mdCurrent state changed—MEMORY.mdPerson/server/decisionentitymemory/entities/Future work planplanprojects/<project>/plans/Research findingsresearchprojects/<project>/research/Audit or reviewreportprojects/<project>/reports/"
      },
      {
        "title": "MEMORY.md Budget",
        "body": "MEMORY.md is loaded every session. Every line costs tokens.\n\nBudget: ≤100 lines / ~3500 tokens\nContains: People, infrastructure, project pointers, lookup table, urgent items\nNever contains: History, lessons, architecture detail, completed items\nOver budget? Move detail to project files or runbooks, keep pointers"
      },
      {
        "title": "Configuration",
        "body": "Create .workspace-standard.yml in the workspace root to customise. All values are optional — defaults apply when omitted or when the file doesn't exist.\n\nbudget:\n  memory_lines: 100        # Max lines for MEMORY.md (default: 100)\n\nmaintenance:\n  stale_days: 14           # Days before flagging stale (default: 14)\n\nprojects:\n  subdirs:                 # Per-project subdirectories (default below)\n    - references\n    - plans\n    - research\n    - reports\n\nentities:                  # Seed files in memory/entities/ (default below)\n  - people\n  - servers\n  - decisions"
      },
      {
        "title": "New Project",
        "body": "./scripts/workspace-init.sh --project my-app\n\nOr manually:\n\nmkdir -p projects/<name>/{references,plans,research,reports}\nCreate README.md with front-matter\nAdd to projects/_index.md"
      },
      {
        "title": "Migration (flat docs/ → structured)",
        "body": "Create projects/<name>/ and runbooks/ directories\nCategorise each file by role (use the decision tree above)\nMove with git mv (preserves history)\nAdd front-matter to moved files\nUpdate path references in AGENTS.md, MEMORY.md, skills\nTrim MEMORY.md to budget\nCommit atomically"
      },
      {
        "title": "Maintenance",
        "body": "Run scripts/workspace-audit.sh weekly. See references/maintenance-checklist.md for the full procedure.\n\nConsolidate daily logs → extract facts to references, lessons to runbooks\nPrune MEMORY.md — remove resolved items, completed decisions\nCheck front-matter — stale active/current files → verify or update\nVerify skills catalogue matches actual skills directory\nCommit maintenance changes"
      }
    ],
    "body": "Workspace Standard\n\nA structured, portable workspace layout for OpenClaw. Gives your agent clear rules for where to put things, how to describe files, and how to keep memory under control.\n\nWhy This Skill?\n\nIf the user asks \"why would I use this?\" or \"what does this do for me?\":\n\nWithout it: Files pile up in docs/, MEMORY.md bloats past its budget, the agent writes the right info to the wrong place, nothing is self-describing, and after a few weeks you can't tell a current reference from a stale plan.\nWith it: Every file has a role and a place. MEMORY.md stays under budget. The audit script catches staleness and missing structure. New projects are one command. The agent knows where to write things without being told.\nIt doesn't: Delete files, require API keys, or lock you in. Remove the skill and your files are still plain markdown.\n\nWhen explaining the value, run scripts/workspace-audit.sh on their workspace and show them what it finds. Concrete evidence beats abstract promises.\n\nGetting Started\n1. Install\nclawhub install workspace-standard\n\n2. Bootstrap your workspace\n\nNew workspace — creates all directories, seeds entity files, and sets up the project registry:\n\nbash skills/workspace-standard/scripts/workspace-init.sh\n\n\nExisting workspace — the skill also works if you already have files. Skip the bootstrap and go straight to step 3 (migration) or step 4 (audit).\n\n3. Add your first project\nbash skills/workspace-standard/scripts/workspace-init.sh --project my-project\n\n\nThis creates the project directory with README.md (including front-matter), standard subdirectories (references/, plans/, research/, reports/), and registers it in projects/_index.md.\n\n4. Audit your workspace\nbash skills/workspace-standard/scripts/workspace-audit.sh\n\n\nChecks root files, MEMORY.md budget, directory structure, project health, front-matter coverage, staleness, and daily logs. Exit code = number of issues (0 = clean).\n\n5. Customise (optional)\n\nCreate .workspace-standard.yml in your workspace root to change defaults. See Configuration below.\n\nHow the agent uses this skill\n\nOnce installed, the agent automatically reads this skill when it needs to:\n\nDecide where to write something (the \"Where to Write\" table)\nAdd a new project\nRun workspace maintenance\nUnderstand what a file's role is\n\nYou don't need to tell the agent to use it — it triggers on matching tasks.\n\nScripts\nScript\tPurpose\nscripts/workspace-init.sh\tBootstrap workspace or add a project\nscripts/workspace-audit.sh\tAudit workspace health and compliance\n# Full bootstrap (new workspace)\nbash skills/workspace-standard/scripts/workspace-init.sh\n\n# Add one project\nbash skills/workspace-standard/scripts/workspace-init.sh --project my-app\n\n# Audit current workspace\nbash skills/workspace-standard/scripts/workspace-audit.sh\n\n# Audit a specific path\nbash skills/workspace-standard/scripts/workspace-audit.sh /path/to/workspace\n\nMigrating an existing workspace\n\nIf you already have a docs/ directory with files:\n\nRun the audit to see current state: bash scripts/workspace-audit.sh\nCreate the structure: mkdir -p projects/<name>/{references,plans,research,reports} runbooks/\nCategorise each file by role (use the decision tree below)\nMove with git mv to preserve history\nAdd front-matter to moved files\nUpdate path references in AGENTS.md, MEMORY.md, and skills\nTrim MEMORY.md to budget (≤100 lines)\nCommit atomically\nThe Role Taxonomy\n\nEvery file gets a role — its job title. The role determines where the file lives, how it ages, and how the audit treats it. Read references/roles-guide.md for the full explanation with examples and tests for each role.\n\nRole\tWhat it means\tWhere it lives\nreference\tFacts about how things are right now\tprojects/*/references/\nplan\tHow you intend to do something\tprojects/*/plans/\nresearch\tWhat you investigated\tprojects/*/research/\nreport\tWhat you assessed at a point in time\tprojects/*/reports/\nrunbook\tHow to do something (procedure)\trunbooks/\nlog\tWhat happened\tmemory/\nentity\tStructured facts about a thing\tmemory/entities/\n\nQuick decision tree: Is it about how things are? → reference. How to change them? → plan. Comparing options? → research. A snapshot assessment? → report. A reusable procedure? → runbook. What happened today? → log. A specific person/server/decision? → entity.\n\nROLE Front-Matter\n\nEvery substantive markdown file gets a YAML header:\n\n---\nrole: reference\nproject: my-project    # Omit for cross-project files\nstatus: current        # active | current | completed | stale | archived\ncreated: 2026-02-01\nupdated: 2026-02-19\nsummary: \"One-line description\"\n---\n\n\nStatus lifecycle: active (being worked on) → current (living document) → stale (needs review) → archived (kept for history)\n\nDirectory Layout\nworkspace/\n├── MEMORY.md               # Current state (≤100 lines)\n│\n├── memory/                 # Episodic memory\n│   ├── YYYY-MM-DD.md       # Daily logs (role: log)\n│   └── entities/           # People, servers, decisions (role: entity)\n│\n├── projects/               # Project-scoped work\n│   ├── _index.md           # Project registry\n│   └── <name>/\n│       ├── README.md       # Overview + current state\n│       ├── references/     # role: reference\n│       ├── plans/          # role: plan\n│       ├── research/       # role: research\n│       └── reports/        # role: report\n│\n├── runbooks/               # Cross-project (role: runbook)\n│   ├── policies.md\n│   ├── lessons-learned.md\n│   └── <domain>/\n│\n└── skills/                 # Procedural memory\n    └── <skill>/SKILL.md\n\nWhere to Write\nWhat you learned\tRole\tWrite to\nFact about a project\treference\tprojects/<project>/references/\nHow to fix something\trunbook\trunbooks/lessons-learned.md\nOperational procedure\trunbook\tskills/ or runbooks/\nWhat happened today\tlog\tmemory/YYYY-MM-DD.md\nCurrent state changed\t—\tMEMORY.md\nPerson/server/decision\tentity\tmemory/entities/\nFuture work plan\tplan\tprojects/<project>/plans/\nResearch findings\tresearch\tprojects/<project>/research/\nAudit or review\treport\tprojects/<project>/reports/\nMEMORY.md Budget\n\nMEMORY.md is loaded every session. Every line costs tokens.\n\nBudget: ≤100 lines / ~3500 tokens\nContains: People, infrastructure, project pointers, lookup table, urgent items\nNever contains: History, lessons, architecture detail, completed items\nOver budget? Move detail to project files or runbooks, keep pointers\nConfiguration\n\nCreate .workspace-standard.yml in the workspace root to customise. All values are optional — defaults apply when omitted or when the file doesn't exist.\n\nbudget:\n  memory_lines: 100        # Max lines for MEMORY.md (default: 100)\n\nmaintenance:\n  stale_days: 14           # Days before flagging stale (default: 14)\n\nprojects:\n  subdirs:                 # Per-project subdirectories (default below)\n    - references\n    - plans\n    - research\n    - reports\n\nentities:                  # Seed files in memory/entities/ (default below)\n  - people\n  - servers\n  - decisions\n\nNew Project\n./scripts/workspace-init.sh --project my-app\n\n\nOr manually:\n\nmkdir -p projects/<name>/{references,plans,research,reports}\nCreate README.md with front-matter\nAdd to projects/_index.md\nMigration (flat docs/ → structured)\nCreate projects/<name>/ and runbooks/ directories\nCategorise each file by role (use the decision tree above)\nMove with git mv (preserves history)\nAdd front-matter to moved files\nUpdate path references in AGENTS.md, MEMORY.md, skills\nTrim MEMORY.md to budget\nCommit atomically\nMaintenance\n\nRun scripts/workspace-audit.sh weekly. See references/maintenance-checklist.md for the full procedure.\n\nConsolidate daily logs → extract facts to references, lessons to runbooks\nPrune MEMORY.md — remove resolved items, completed decisions\nCheck front-matter — stale active/current files → verify or update\nVerify skills catalogue matches actual skills directory\nCommit maintenance changes"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/marcus-daemon/workspace-standard",
    "publisherUrl": "https://clawhub.ai/marcus-daemon/workspace-standard",
    "owner": "marcus-daemon",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/workspace-standard",
    "downloadUrl": "https://openagent3.xyz/downloads/workspace-standard",
    "agentUrl": "https://openagent3.xyz/skills/workspace-standard/agent",
    "manifestUrl": "https://openagent3.xyz/skills/workspace-standard/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/workspace-standard/agent.md"
  }
}