skills/ai-workspace/SKILL.md
Create, review, audit, and validate AI workspaces for agent hosts such as Codex, Copilot, Gemini, and similar desktop or CLI runtimes. Use when the user asks to design an agent-ready repo, scaffold AGENTS.md and event handlers, create an API-backed or domain knowledge workspace, audit AGENTS.md or SKILL.md quality, or improve how a repo exposes behavior to coding agents.
npx skillsauth add yysun/awesome-agent-world ai-workspaceInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create or review AI workspaces operated by agent hosts and humans.
An AI workspace makes behavior visible through files:
AGENTS.md or host-equivalent root instructions as the workspace contract;data/ for layered durable knowledge state;process/ for event handlers that create or update state;output/ for generated human-facing views and deliverables;skills/ for host-discoverable reusable workflows;scripts/ only for deterministic logic that host tools cannot do
well;The default execution model borrows AppRun's event/data/handler shape:
event + current state -> event handler -> new or updated state
Events can come from user requests, cron/timer triggers, scheduled reviews, file
or data changes, API/webhook/input updates, validation runs, audit runs, or
manual operator decisions. Classify the event, load the smallest relevant
event handler defined under process/, read the necessary current state, perform
documented effects, then create or update state in data/, render output/, or
respond directly.
Prefer AGENTS.md + data/ + process/ + output/ by default.
Add skills only when host skill discovery, reuse, packaging, or a triggerable entry point is useful.
Classify the request first:
Mixed request order:
Choose the smallest structure that preserves the workspace contract.
Root/process workspace:
AGENTS.md
data/
process/
output/
Use this when root instructions, durable data, event handlers, and generated outputs are enough.
API-backed workspace:
AGENTS.md
data/
process/api.yaml
process/api.md
process/<event-handler>.md
output/
Use this when event handlers call an external API as a documented effect.
Add scripts/ only when AGENTS.md or process/*.md references them.
Optional skill wrapper:
skills/<skill-name>/SKILL.md
skills/<skill-name>/references/
skills/<skill-name>/scripts/
skills/<skill-name>/fixtures/
Use this only when a workflow benefits from host skill discovery, reuse, packaging, or a triggerable entry point. Do not hide workspace event handlers inside a skill folder.
Do not create README.md.
Use AGENTS.md and process/*.md for workspace contracts.
Use minimal generated docs:
AGENTS.md must describe only real workspace folders and handlers;skills/, scripts/, API files, docs, or optional outputs
unless they exist and are part of the workspace contract.AGENTS.md is the always-on workspace contract: the root agreement that tells
an agent host what this workspace is for, where state lives, which handlers own
behavior, and what outputs or effects are allowed.
It must define:
AGENTS.md + data/ + process/ + output/;event + current state -> event handler -> new or updated state;data/ or output/;Host assumptions:
Do not assume a database, background worker, web server, browser UI, or external service unless the workspace explicitly documents it.
Event handlers are process files under process/.
They read current state from data/, perform documented effects, and produce
new or updated state, usually persisted back to data/. They may also render
human-facing output under output/ or respond directly.
process/ contains event handlers, not passive documentation.
Each handler should make these parts explicit:
data/ reads;data/ writes;Use one handler per meaningful workflow boundary. Examples:
process/ingest.md
process/update.md
process/report.md
process/review.md
process/api.md
process/data.md
process/<object-type>.md
Do not create process files just to fill a tree. Create them when behavior, state transitions, source policy, output rendering, or external effects need a stable contract.
Treat natural-language creation requests as actionable. If the request names the domain, use it. Ask the domain question only when the domain is missing.
Before writing files:
data/ paths;output/ paths for generated reports, decks, reviews, or other
deliverables;When creating a knowledge base:
AGENTS.md, data/, process/, and output/;process/data.md with the object-first path formula;Use:
references/creation-rubric.md for creation checks;references/domain-knowledge-rubric.md only when a domain is supplied;templates/AGENTS.md for root instructions, but adapt it to the workspace
shape;templates/api-guide.md for API-backed process guidance;templates/domain-knowledge-contract.md for domain knowledge;templates/data-contract.md for knowledge folder contracts;templates/runtime-process.md for source-to-layer workflow handlers;templates/object-process.md for object-type handlers;templates/reporting-process.md for natural-language report/deck handlers;templates/report-artifact.md for readable reports;templates/deck-outline.md for deck-ready outlines;Do not create generic file I/O or web-fetch scripts. Do not create Python scripts by default. Use the host's file, shell, and web tools unless a script adds real value.
Ask:
What domain should this knowledge base serve?
Accept a domain or skip.
If the user already supplied a domain, do not ask again.
If skipped:
If supplied, create domain-shaped handlers:
process/<memory-layer>.md
process/<tension-layer>.md
process/<insight-layer>.md
process/<action-layer>.md
Create process/<runtime-layer>.md only when source-to-layer flow matters.
Create process/<object-folder>/<object-type>.md only when object types are
known and need distinct rules.
Create process/<reporting-layer>.md when users can ask for reports,
presentations, reviews, summaries, or exportable status output in natural
language.
Layer meaning:
sources: raw or summarized evidence with provenance.memory: durable object knowledge.tension: unresolved pressure, risk, contradiction, or opportunity.insight: current interpretation and consequence.action: local recommended next moves.Use those English names as semantic defaults only. In created workspaces, localize layer names, object types, categories, section headings, and path segments to the user's detected language.
Keep a vocabulary map in process/data.md or the domain contract.
Use stable path names once chosen.
If source docs seed the domain but are not object instances, create a flat seed knowledge path by default:
data/<localized-layer>.md
Mention that multiple knowledge bases are supported. Use nested seed paths only when the user asks for multiple knowledge bases:
data/<localized-knowledge-base-a>/<localized-layer>.md
data/<localized-knowledge-base-b>/<localized-layer>.md
Each requested knowledge base needs:
Do not invent an object ID for seed knowledge.
Actions are not external tasks or writes unless the user approves the exact external write or the selected event handler explicitly permits the local write.
Support natural-language reporting when the workspace has durable knowledge.
Users may ask for reports with phrases such as:
report the current status
make a presentation
汇报当前情况
做一份复盘
输出给业务看的 deck
Treat each report request as an event. Map the event into an explicit scope before reading files:
current/ layers or seed knowledge;If the scope is ambiguous, choose the smallest useful scope and state it. Ask only when the report could materially change audience, object set, or external write behavior.
Reports, decks, reviews, and summaries belong under output/.
Default paths:
output/reports/<yyyy>/<mm>/<dd>/<scope>.md
output/decks/<yyyy>/<mm>/<dd>/<scope>.md
Use repo-native export routes:
Create matching process and template files when reporting is part of the workspace contract:
process/<reporting-layer>.md
templates/report-artifact.md
templates/deck-outline.md
Reporting event handlers must define:
output/ path and format;Do not let reporting become a detached summary. It must preserve the chain:
sources -> memory -> tension -> insight -> action -> output
For API-backed workspaces:
process/api.yaml as the route and schema source of truth;process/api.md for auth, route selection, error handling, effects, and
writes;.env.example for required variable names when env vars are needed;.env to .gitignore when local secrets are expected;.env unless the user supplies non-secret values;data/ path.Use scripts only when deterministic code is materially better than host tools, such as pagination, joins, normalization, validation, artifact generation, or repeated processing.
Do not require Python. Use the smallest runtime already natural to the repo.
Workspace-level files:
AGENTS.md: always-on workspace contract.data/: durable source evidence and knowledge state.process/: event handlers and workspace-level operating contracts.process/<reporting-layer>.md: report/deck scope mapping and render flow
when output workflows exist.output/: generated human-facing views, deliverables, and scratch render
targets.output/reports/ and output/decks/: readable, exportable outputs when
reporting is part of the workspace.scripts/: only when referenced by AGENTS.md or process/*.md.Skill-level files:
skills/<skill-name>/SKILL.md: triggerable workflow.skills/<skill-name>/references/: long skill guidance.skills/<skill-name>/scripts/: scripts referenced by that skill.skills/<skill-name>/fixtures/: optional examples or script inputs.Do not move workspace-level process files or scripts into a skill folder.
Do not move skill-owned artifacts into the repo root.
Generated file maps must be exact.
Do not reference skills/, scripts/, .docs/, or docs/ unless they exist
and are part of the workspace contract.
Do not create or reference README.md.
Create or reference source-doc folders only when the user supplies source docs, asks for them, or the existing workspace already uses them.
If a folder is optional, omit it from generated docs by default.
Scripts are behind-the-scenes implementation details. Most workspaces should not need them.
Execution path:
event + current state -> event handler -> host tool call -> referenced script -> new or updated state
Users should not run scripts directly.
Scripts must:
For knowledge bases, use object-first data paths:
data/<localized-object-type>/<object-id>/<yyyy>/<mm>/<dd>/<localized-layer>.md
data/<localized-object-type>/<object-id>/current/<localized-layer>.md
Use dated folders only when the workspace needs history:
current/ needs a traceable source snapshot.If date tracking is not needed, use the stable seed path or current/ path and
document why dated snapshots are omitted.
Required semantic layers:
sources
memory
tension
insight
action
Localize filenames for those meanings unless the user or existing repo uses English.
Do not use:
data/<object>/<yyyy>/<mm>/<dd>/<localized-category>.md
That path loses object type, object ID, and layer meaning.
If category is needed, treat it as a view:
data/<localized-category>/<localized-object-type>/<object-id>/<yyyy>/<mm>/<dd>/<localized-layer>.md
Always define:
For reports and decks, always define:
output/ path;Classify the target:
AGENTS.md, SKILL.md, prompt, script, or reference;process/ files;Inspect only what the target requires.
Use references/audit-rubric.md when it is relevant, but audit against this
workspace contract first.
Report findings first.
Audit for these workspace invariants:
AGENTS.md defines AGENTS.md + data/ + process/ + output/;process/ files act as handlers, not generic docs;data/;process/;output/;Do not redesign unless the user asks.
Validation is stronger than inspection.
Do not say validated unless behavior was checked.
Levels:
process/;data/ files were read or updated;output/ files were created in the documented format and
path;Say:
Audit report:
Summary
Scope
Inspected Files
Findings
Gaps
Validation Status
Recommended Next Steps
Creation report:
Summary
Files Created Or Changed
Host Capability Assumptions
Workspace Layout
Event Model
Event Handlers
Data And Output Paths
Optional Skills
Validation Status
Remaining Gaps
testing
Scaffold, review, audit, and validate skill-based AI workspaces for agent hosts. Use when the user wants an AI workspace built around SKILL.md plus event handlers, references, templates, scripts, data, and output instead of AGENTS.md; when they want knowledge distillation workflows packaged as a reusable skill; or when they want to convert an AGENTS.md workspace pattern into a skill-owned workspace.
tools
<what this skill does>. Use when the user asks for <trigger phrases>, <task contexts>, or <expected workflow>.
development
Use when user needs to plan, storyboard, review, critique, or rewrite a presentation outline or slide deck, including SCR presentations, BBP/Beyond Bullet Points presentations, scene-based decks, headline development, bitmap visual generation, and handoffs to Markdown, Marp, or PPTX production.
development
Build and maintain local code-project wikis under .wiki or language-specific wiki roots such as .wiki-cn and .wiki-fr. Use this skill whenever the user mentions "wiki", "ingest", "refresh wiki", "update wiki", "lint wiki", "check wiki", "document the codebase", "export wiki", "bundle wiki", "archive wiki", or asks a question that can be answered from wiki pages. Also use it when the user asks how something works in the project and a wiki page could capture the answer for future reference.