Repository navigation
Expand file tree
/
Copy pathsetup.sh
More file actions
executable file
·144 lines (109 loc) · 4.08 KB
/
Copy pathsetup.sh
File metadata and controls
executable file
·144 lines (109 loc) · 4.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#!/usr/bin/env bash
# agents-standard-setup.sh
# Symlinks ~/.agents/AGENTS.md to all agent global config locations
# Safe to re-run. Uses ln -sf (force overwrite symlinks only).
set -euo pipefail
GLOBAL="${HOME}/.agents/AGENTS.md"
# Create global if it doesn't exist
mkdir -p "${HOME}/.agents"
if [[ ! -f "${GLOBAL}" ]]; then
cat > "${GLOBAL}" <<'DEFAULTS'
# Global Agent Rules
# Edit this file to configure behavior for ALL agents on this machine.
# See https://agentsstandard.com for the full specification.
## Identity
You are a senior engineer who writes production-grade code.
## Rules
- Never hardcode secrets
- Validate all inputs
- Use parameterized queries
- Follow conventional commits
## Preferences
- Python: PEP 8, type hints, uv
- TypeScript: strict mode, ESLint
- Bash: set -euo pipefail
DEFAULTS
echo "Created ${GLOBAL} with defaults"
else
echo "Using existing ${GLOBAL}"
fi
symlink() {
local target="$1"
local name="$2"
mkdir -p "$(dirname "${target}")"
if ln -sf "${GLOBAL}" "${target}" 2>/dev/null; then
echo " ✓ ${name} → ${target}"
else
echo " ✗ ${name} → ${target} (failed — may need sudo or file exists as non-symlink)"
fi
}
echo ""
echo "Symlinking ${GLOBAL} to agent configs..."
echo ""
# Pi — native, already reads ~/.agents/AGENTS.md
echo " ✓ Pi (native — no symlink needed)"
# Claude Code
symlink "${HOME}/.claude/CLAUDE.md" "Claude Code"
# Agy / Gemini CLI
symlink "${HOME}/.gemini/GEMINI.md" "Agy / Gemini CLI"
# OpenAI Codex
symlink "${HOME}/.codex/instructions.md" "Codex"
# Cursor
symlink "${HOME}/.cursor/rules/agents-standard" "Cursor"
# GitHub Copilot (no global file, project only)
echo " · GitHub Copilot (project-only — use .agents/AGENTS.md → .github/copilot-instructions.md)"
# Windsurf
symlink "${HOME}/.codeium/windsurf/rules" "Windsurf"
# Cline
symlink "${HOME}/.cline/cline_rules" "Cline"
# Roo Code
symlink "${HOME}/.roo/rules/agents-standard" "Roo Code"
# Kiro
symlink "${HOME}/.kiro/kiro.md" "Kiro"
# Augment
symlink "${HOME}/.augment/guidelines" "Augment"
# Goose
symlink "${HOME}/.config/goose/goosehints" "Goose"
# Junie
symlink "${HOME}/.junie/guidelines.md" "Junie"
# Trae
symlink "${HOME}/.trae/rules/agents-standard" "Trae"
# Crush
symlink "${HOME}/.config/crush/crush.md" "Crush"
# Hermes Agent
symlink "${HOME}/.hermes/SOUL.md" "Hermes Agent"
# MiniCC
symlink "${HOME}/.minicc/AGENTS.md" "MiniCC"
# Deep Agents (dcode)
symlink "${HOME}/.deepagents/AGENTS.md" "Deep Agents (dcode)"
# Continue (JSON format — can't symlink markdown into JSON)
echo " · Continue (JSON config — manual setup required)"
# Devin (settings UI — no file to symlink)
echo " · Devin (settings UI — no global file to symlink)"
# Aider (YAML format — can't symlink markdown into YAML)
echo " · Aider (YAML config — manual setup required)"
# Warp (settings UI — no global file to symlink)
echo " · Warp (settings UI — no global file to symlink)"
# Agent Zero (Docker/Web UI — no global file to symlink)
echo " · Agent Zero (Docker UI — no global file to symlink)"
# Qwen Code (no global file)
echo " · Qwen Code (project-only — use QWEN.md symlink)"
# Codestral (no global file)
echo " · Mistral Codestral (project-only — use CODESTRAL.md symlink)"
# fcc-claude (custom env config)
echo " · fcc-claude (config via ~/.fcc/.env — no markdown file to symlink)"
echo ""
echo "Done. Edit ~/.agents/AGENTS.md — all symlinked agents follow your rules."
echo "See https://agentsstandard.com for project-level setup."
echo ""
echo "Project setup:"
echo " 1. Create .agents/AGENTS.md for project base rules (tech stack, deployment)"
echo " 2. Create AGENTS.md at your repo root for active task / PRD rules"
echo " 3. Symlink agent-specific files to the root AGENTS.md:"
echo " ln -sf AGENTS.md CLAUDE.md"
echo " ln -sf AGENTS.md GEMINI.md"
echo " ln -sf AGENTS.md .cursorrules"
echo " 4. Use .agents/ for tooling and project base rules:"
echo " .agents/AGENTS.md (project base rules)"
echo " .agents/mcp-settings.json (project MCP servers)"
echo " .agents/skills/**/SKILL.md (project skills)"