Manage documentation in the docs/ git submodule with proper structure and synchronization. Use when (1) user explicitly mentions "add docs", "specs", or documentation creation, (2) creating or reading files in docs/ directory, (3) working on features that need specification documents, implementation plans, or progress tracking, (4) documenting solutions, PRDs, or technical specs. Handles submodule initialization, proper directory structure (solutions/specs/feature), syncing from remote master, and committing changes.
Manage documentation stored in the docs/ git submodule with proper structure, syncing, and version control.
This skill automates the workflow for working with the docs/ submodule:
Check if the docs/ directory exists and is initialized:
# Check if docs directory is a git repository
if [ ! -d "docs/.git" ]; then
# Try npm run setup if it exists
if grep -q '"setup"' package.json 2>/dev/null; then
npm run setup
else
# Fallback to git submodule commands
git submodule update --init --recursive
fi
fi
Navigate to docs/<repo-name>/ where <repo-name> is the parent repository name.
Get repo name:
# Extract repo name from git remote URL
REPO_NAME=$(basename $(git rev-parse --show-toplevel))
Choose appropriate directory based on content type:
| Directory | Purpose | Examples |
|-----------|---------|----------|
| solutions/<issue>/ | Bug fixes, workarounds, issue documentation | android-build-failure/, navigation-crash/ |
| specs/<feature>/ | Technical specs, implementation plans, progress tracking | chat-refactor/, offline-sync/ |
| feature/<feature-name>/ | PRDs, product requirements, user stories | voice-messaging/, payment-integration/ |
For detailed guidance and examples, see structure-guide.md.
Standard files for specs/:
implementation-plan.md - Initial technical planprogress.md - Development tracking (use for features with 5+ todos)If content doesn't fit these categories, create a descriptive directory (e.g., research/, rfcs/, architecture/).
Create the necessary directory structure and files:
cd docs/$REPO_NAME
# Create directory if needed (example for specs)
mkdir -p specs/<feature-name>
# Create or edit the file
# Use Write or Edit tools to create/modify the documentation
Inside the docs submodule:
cd docs
# Sync from remote master first
git fetch origin
git pull origin master
# Stage and commit changes
git add .
git commit -m "doc: added spec for <feature-name>"
# OR
git commit -m "doc: update progress for <feature-name>"
# Push to remote
git push origin master
In the parent repository:
cd .. # Return to parent repo root
# Commit the submodule update
git add docs
git commit -m "doc: update docs submodule for <feature-name>"
Commit message format:
doc: added spec for <feature-name>doc: update progress for <feature-name>doc: added solution for <issue-name>doc: added PRD for <feature-name>If submodule pull fails due to conflicts:
If docs directory structure doesn't exist:
docs/<repo-name>/ if it doesn't existIf unable to determine appropriate directory:
Detailed documentation structure guide with:
npx skills add twofourlabs/docs-submodule-manager下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer