.agents/skills/project-initialization/SKILL.md
Initialize a project with AI agent rules and documentation. Use when setting up a new repository for AI agent collaboration.
npx skillsauth add aspiers/ai-config project-initializationInstall 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.
Improve the results of running the /init command to create AI agent rules.
Use this skill when:
CLAUDE.md nor AGENTS.md exists/init command has been run but needs improvementThe /init command creates CLAUDE.md, but this is only useful for Claude Code.
This skill ensures the same file contents are discoverable and readable by
multiple AI agents looking in different places.
This follows the standard documented at: https://agent-rules.org/
Perform the following steps:
Check existing files: Verify if CLAUDE.md and/or AGENTS.md exist
Handle new project: If neither file exists, first run Claude's /init process to generate initial content
Rename if needed: If only CLAUDE.md exists, rename it to AGENTS.md
Create symlinks: Generate symlinks so different agents can find the rules:
CLAUDE.md → points to AGENTS.mdFix unsafe git push commands: Scan all agent instruction files
(AGENTS.md, CLAUDE.md, and any other files they reference) for
bare or underspecified git push invocations that could
accidentally push to the wrong branch. This is a common problem
with instructions added by tools like beads.
What to look for: any git push that does NOT specify both
a remote and a refspec, e.g.:
git push (no arguments at all)git push origin (remote but no refspec)git push --force (flags but no remote/refspec)Why this matters: a bare git push relies on the upstream
tracking branch configuration. If you're on a feature branch
that happens to track main, git push will push your feature
commits directly to main. Using git push origin HEAD is much
safer because it pushes the current branch to a remote branch of
the same name, preventing accidental pushes to trunk branches.
How to fix: replace bare git push with
git push origin HEAD. Preserve any flags that were present,
e.g. git push --force → git push origin HEAD --force.
Edge cases to handle:
```) and inline code (`)[ ] 6. git push (push to remote)git push # deploygit push origin main,
git push origin HEAD)Verify: Confirm the symlinks work by checking file accessibility
ls CLAUDE.md AGENTS.md# Check existing files
ls -la CLAUDE.md AGENTS.md
# Rename if needed
mv CLAUDE.md AGENTS.md
# Create symlinks
ln -s AGENTS.md CLAUDE.md
# Verify
cat CLAUDE.md
git pushSearch agent instruction files for bare git push:
# Find bare git push commands in agent files
grep -n 'git push' AGENTS.md CLAUDE.md .beads/context/*.md
Example transformations:
| Before | After |
|--------|-------|
| git push | git push origin HEAD |
| git push --force | git push origin HEAD --force |
| git push origin | git push origin HEAD |
| [ ] 6. git push | [ ] 6. git push origin HEAD |
Leave these unchanged (already safe):
| Already safe |
|--------------|
| git push origin HEAD |
| git push origin main |
| git push origin HEAD --force |
| git push -u origin HEAD |
After this process:
AGENTS.md contains the authoritative AI agent rulesCLAUDE.md is a symlink to AGENTS.mdgit push commands in agent instructions explicitly
specify remote and refspec to prevent accidental pushes
to trunk branchesdevelopment
Run tests according to repository guidelines. Use after linting passes, before staging changes.
development
Orchestrate the complete development workflow for implementing sub-tasks from a task list. Use for end-to-end feature implementation with quality controls.
development
Implement a single sub-task from a task list. Use when working on feature development with existing task lists.
data-ai
Generate a detailed task list from a PRP. Use after a PRP is created and ready for implementation planning.