dewey-docs
npx skills add https://github.com/arach/dewey --skill dewey-docs
Agent 安装分布
Skill 文档
Dewey Documentation Toolkit
Dewey generates AI-agent-ready documentation for software projects. It creates AGENTS.md, llms.txt, docs.json, and install.md files that AI coding agents can consume effectively.
When to Use
Activate this skill when the user asks to:
- “Set up documentation for my project”
- “Make my docs AI-friendly”
- “Generate AGENTS.md”
- “Create an llms.txt file”
- “Add agent-ready docs”
- “Set up Dewey”
Installation
pnpm add @arach/dewey
# or
npm install @arach/dewey
CLI Commands
| Command | Purpose |
|---|---|
dewey init |
Create docs/ folder and dewey.config.ts |
dewey audit |
Check documentation completeness |
dewey generate |
Create AGENTS.md, llms.txt, docs.json, install.md |
dewey agent |
Score agent-readiness (0-100 scale) |
Quick Setup
# 1. Install
pnpm add @arach/dewey
# 2. Initialize
npx dewey init
# 3. Generate agent files
npx dewey generate
This creates:
docs/
âââ overview.md
âââ quickstart.md
âââ AGENTS.md # Combined agent context
âââ llms.txt # Plain text summary
dewey.config.ts # Configuration
Configuration (dewey.config.ts)
import { defineConfig } from '@arach/dewey'
export default defineConfig({
project: {
name: 'my-project',
tagline: 'A brief description',
type: 'npm-package', // or 'cli-tool', 'macos-app', 'react-library', 'monorepo', 'generic'
},
agent: {
// Critical rules agents MUST follow
criticalContext: [
'Always use TypeScript',
'Run tests before committing',
],
// Key directories for navigation
entryPoints: {
'Source': 'src/',
'Tests': 'tests/',
'Config': 'config/',
},
// Pattern-based instructions
rules: [
{ pattern: '*.test.ts', instruction: 'Use vitest for testing' },
{ pattern: 'src/api/*', instruction: 'Follow REST conventions' },
],
// Docs to include in AGENTS.md
sections: ['overview', 'quickstart', 'api'],
},
docs: {
path: './docs',
output: './',
required: ['overview.md', 'quickstart.md'],
},
// For install.md generation (installmd.org standard)
install: {
objective: 'Set up the development environment',
doneWhen: {
command: 'npm test',
expectedOutput: 'All tests passed',
},
prerequisites: ['Node.js 18+', 'pnpm'],
steps: [
{ description: 'Install dependencies', command: 'pnpm install' },
{ description: 'Run tests', command: 'pnpm test' },
],
},
})
Project Types
| Type | Best For |
|---|---|
npm-package |
Published npm packages |
cli-tool |
Command-line tools |
macos-app |
macOS applications |
react-library |
React component libraries |
monorepo |
Multi-package workspaces |
generic |
Other projects |
Generated Files
AGENTS.md
Combined documentation with critical context for AI agents:
- Project overview and structure
- Critical rules and conventions
- Entry points for navigation
- API reference
llms.txt
Plain text summary optimized for LLM context windows:
- Concise project description
- Key commands
- Installation steps
- Links to full docs
docs.json
Structured JSON for programmatic access:
- Full documentation tree
- Metadata and navigation
- Searchable content
install.md
LLM-executable installation instructions following installmd.org:
- Step-by-step setup
- Verification commands
- Can be piped to AI:
curl url/install.md | claude
Agent Content Pattern
Each doc page should have two versions:
docs/
âââ overview.md # Human-readable (prose, examples)
âââ agent/
â âââ overview.agent.md # Agent-optimized (dense, structured)
Agent versions should be:
- Dense (no prose, just facts)
- Structured (tables, explicit values)
- Self-contained (no URL fetching needed)
- Cross-referenced against source code
React Components
Dewey provides 22 components for building documentation sites:
Layout
DocsApp– Complete docs site with routingDocsLayout– Main layout (sidebar, TOC, navigation)Header– Sticky header with theme toggleSidebar– Left navigation panelTableOfContents– Right minimap with scroll-spy
Content
MarkdownContent– Renders markdown with syntax highlightingCodeBlock– Code with copy buttonCallout– Alert boxes (info, warning, tip, danger)Tabs– Tabbed contentSteps– Numbered instructionsCard,CardGrid– Content cardsFileTree– Directory visualizerApiTable– Props/params tableBadge– Status indicators
Agent-Friendly
AgentContext– Collapsible agent content blockPromptSlideout– Interactive prompt editorCopyButtons– “Copy for AI” button
Provider
DeweyProvider– Theme and component context
Theme Presets
import { DeweyProvider } from '@arach/dewey'
<DeweyProvider theme="neutral">
{/* Your docs */}
</DeweyProvider>
Available themes:
neutral | ocean | emerald | purple | dusk | rose | github | warm
Built-in Skills
Dewey includes LLM prompt templates for documentation workflows:
docsReviewAgent
Reviews documentation quality, catches drift from codebase:
import { docsReviewAgent } from '@arach/dewey'
const prompt = docsReviewAgent.reviewPage
.replace('{DOC_FILE}', 'docs/api.md')
.replace('{SOURCE_FILES}', 'src/types/index.ts')
.replace('{OUTPUT_FILE}', '.dewey/reviews/api.md')
installMdGenerator
Generates install.md files following installmd.org standard.
promptSlideoutGenerator
Creates interactive prompt configs for PromptSlideout components.
Workflow: Agent-Ready Docs
- Initialize:
npx dewey init - Write docs: Create human-readable markdown in
docs/ - Add agent versions: Create
docs/agent/*.agent.mdwith structured content - Configure: Set critical context and rules in
dewey.config.ts - Generate:
npx dewey generatecreates AGENTS.md, llms.txt, etc. - Audit:
npx dewey auditchecks completeness - Score:
npx dewey agentrates agent-readiness (target: 80+)
Example: API Documentation
Human version (docs/api.md):
# API Reference
The API provides methods for managing users...
## createUser(options)
Creates a new user with the specified options.
### Parameters
- `name` - The user's display name
- `email` - Email address (must be unique)
Agent version (docs/agent/api.agent.md):
# API Reference
## createUser
| Param | Type | Required | Default |
|-------|------|----------|---------|
| name | string | yes | - |
| email | string | yes | - |
| role | 'admin' \| 'user' | no | 'user' |
Returns: `Promise<User>`
Throws: `DuplicateEmailError` if email exists
Output
When setting up Dewey for a project:
- Create
dewey.config.tswith appropriate project type - Run
dewey initto scaffold docs structure - Add critical context relevant to the project
- Generate agent files with
dewey generate - Verify with
dewey agent(target score: 80+)