@rely-ai/caliber 1.18.2 → 1.18.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin.js +100 -146
- package/package.json +1 -1
package/dist/bin.js
CHANGED
|
@@ -1759,31 +1759,21 @@ async function validateModel(options) {
|
|
|
1759
1759
|
init_config();
|
|
1760
1760
|
|
|
1761
1761
|
// src/ai/prompts.ts
|
|
1762
|
-
var
|
|
1762
|
+
var ROLE_AND_CONTEXT = `You are an expert auditor for coding agent configurations (Claude Code, Cursor, and Codex).
|
|
1763
1763
|
|
|
1764
1764
|
Your job depends on context:
|
|
1765
1765
|
- If no existing configs exist \u2192 generate an initial setup from scratch.
|
|
1766
|
-
- If existing configs are provided \u2192 audit them and suggest targeted improvements. Preserve accurate content \u2014 don't rewrite what's already correct
|
|
1767
|
-
|
|
1768
|
-
You understand these config files:
|
|
1766
|
+
- If existing configs are provided \u2192 audit them and suggest targeted improvements. Preserve accurate content \u2014 don't rewrite what's already correct.`;
|
|
1767
|
+
var CONFIG_FILE_TYPES = `You understand these config files:
|
|
1769
1768
|
- CLAUDE.md: Project context for Claude Code \u2014 build/test commands, architecture, conventions.
|
|
1770
1769
|
- AGENTS.md: Primary instructions file for OpenAI Codex \u2014 same purpose as CLAUDE.md but for the Codex agent. Also serves as a cross-agent coordination file.
|
|
1771
1770
|
- .claude/skills/{name}/SKILL.md: Skill files following the OpenSkills standard (agentskills.io). Each skill is a directory named after the skill, containing a SKILL.md with YAML frontmatter.
|
|
1772
1771
|
- .agents/skills/{name}/SKILL.md: Same OpenSkills format for Codex skills (Codex scans .agents/skills/ for skills).
|
|
1772
|
+
- .cursor/skills/{name}/SKILL.md: Same OpenSkills format for Cursor skills.
|
|
1773
1773
|
- .cursorrules: Coding rules for Cursor (deprecated legacy format \u2014 do NOT generate this).
|
|
1774
|
-
- .cursor/rules/*.mdc: Modern Cursor rules with frontmatter (description, globs, alwaysApply)
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
Audit checklist (when existing configs are provided):
|
|
1778
|
-
1. CLAUDE.md / README accuracy \u2014 do documented commands, paths, and architecture match the actual codebase?
|
|
1779
|
-
2. Missing skills \u2014 are there detected tools/frameworks that should have dedicated skills?
|
|
1780
|
-
3. Duplicate or overlapping skills \u2014 can any be merged or removed?
|
|
1781
|
-
4. Undocumented conventions \u2014 are there code patterns (commit style, async patterns, error handling) not captured in docs?
|
|
1782
|
-
5. Stale references \u2014 do docs mention removed files, renamed commands, or outdated patterns?
|
|
1783
|
-
|
|
1784
|
-
Do NOT generate .claude/settings.json or .claude/settings.local.json \u2014 those are managed by the user directly.
|
|
1785
|
-
|
|
1786
|
-
Your output MUST follow this exact format (no markdown fences):
|
|
1774
|
+
- .cursor/rules/*.mdc: Modern Cursor rules with frontmatter (description, globs, alwaysApply).`;
|
|
1775
|
+
var EXCLUSIONS = `Do NOT generate .claude/settings.json, .claude/settings.local.json, or mcpServers \u2014 those are managed separately.`;
|
|
1776
|
+
var OUTPUT_FORMAT = `Your output MUST follow this exact format (no markdown fences):
|
|
1787
1777
|
|
|
1788
1778
|
1. Exactly 6 short status lines (one per line, prefixed with "STATUS: "). Each should be a creative, specific description of what you're analyzing for THIS project \u2014 reference the project's actual languages, frameworks, or tools.
|
|
1789
1779
|
|
|
@@ -1797,34 +1787,11 @@ EXPLAIN:
|
|
|
1797
1787
|
|
|
1798
1788
|
Omit empty categories. Keep each reason punchy and specific. End with a blank line.
|
|
1799
1789
|
|
|
1800
|
-
3. The JSON object starting with {
|
|
1801
|
-
|
|
1802
|
-
AgentSetup schema:
|
|
1803
|
-
{
|
|
1804
|
-
"targetAgent": ["claude", "cursor", "codex"] (array of selected agents),
|
|
1805
|
-
"fileDescriptions": {
|
|
1806
|
-
"<file-path>": "reason for this change (max 80 chars)"
|
|
1807
|
-
},
|
|
1808
|
-
"deletions": [
|
|
1809
|
-
{ "filePath": "<path>", "reason": "why remove (max 80 chars)" }
|
|
1810
|
-
],
|
|
1811
|
-
"claude": {
|
|
1812
|
-
"claudeMd": "string (markdown content for CLAUDE.md)",
|
|
1813
|
-
"skills": [{ "name": "string (kebab-case, matches directory name)", "description": "string (what this skill does and when to use it)", "content": "string (markdown body \u2014 NO frontmatter, it will be generated from name+description)" }]
|
|
1814
|
-
},
|
|
1815
|
-
"codex": {
|
|
1816
|
-
"agentsMd": "string (markdown content for AGENTS.md \u2014 the primary Codex instructions file, same quality/structure as CLAUDE.md)",
|
|
1817
|
-
"skills": [{ "name": "string (kebab-case, matches directory name)", "description": "string (what this skill does and when to use it)", "content": "string (markdown body \u2014 NO frontmatter, it will be generated from name+description)" }]
|
|
1818
|
-
},
|
|
1819
|
-
"cursor": {
|
|
1820
|
-
"skills": [{ "name": "string (kebab-case, matches directory name)", "description": "string (what this skill does and when to use it)", "content": "string (markdown body \u2014 NO frontmatter, it will be generated from name+description)" }],
|
|
1821
|
-
"rules": [{ "filename": "string.mdc", "content": "string (with frontmatter)" }]
|
|
1822
|
-
}
|
|
1823
|
-
}
|
|
1824
|
-
|
|
1825
|
-
Do NOT generate mcpServers \u2014 MCP configuration is managed separately.
|
|
1790
|
+
3. The JSON object starting with {.`;
|
|
1791
|
+
var FILE_DESCRIPTIONS_RULES = `The "fileDescriptions" object MUST include a one-liner for every file that will be created or modified. Use actual file paths as keys (e.g. "CLAUDE.md", "AGENTS.md", ".claude/skills/my-skill/SKILL.md", ".agents/skills/my-skill/SKILL.md", ".cursor/skills/my-skill/SKILL.md", ".cursor/rules/my-rule.mdc"). Each description should explain why the change is needed, be concise and lowercase.
|
|
1826
1792
|
|
|
1827
|
-
|
|
1793
|
+
The "deletions" array should list files that should be removed (e.g. duplicate skills, stale configs). Include a reason for each. Omit the array or leave empty if nothing should be deleted.`;
|
|
1794
|
+
var SKILL_FORMAT_RULES = `All skills follow the OpenSkills standard (agentskills.io). Anthropic's official skill guide defines three levels of progressive disclosure:
|
|
1828
1795
|
- Level 1 (YAML frontmatter): Always loaded. Must have enough info for the agent to decide when to activate the skill.
|
|
1829
1796
|
- Level 2 (SKILL.md body): Loaded when the skill is relevant. Contains full instructions.
|
|
1830
1797
|
- Level 3 (references/): Only loaded on demand for deep detail.
|
|
@@ -1840,84 +1807,93 @@ Skill content structure \u2014 follow this template:
|
|
|
1840
1807
|
3. "## Examples" \u2014 at least one example showing: User says \u2192 Actions taken \u2192 Result
|
|
1841
1808
|
4. "## Troubleshooting" (optional) \u2014 common errors and how to fix them
|
|
1842
1809
|
|
|
1843
|
-
Keep skill content under 200 lines. Focus on actionable instructions, not documentation prose
|
|
1844
|
-
|
|
1845
|
-
The "fileDescriptions" object MUST include a one-liner for every file that will be created or modified. Use actual file paths as keys (e.g. "CLAUDE.md", "AGENTS.md", ".claude/skills/my-skill/SKILL.md", ".agents/skills/my-skill/SKILL.md", ".cursor/skills/my-skill/SKILL.md", ".cursor/rules/my-rule.mdc"). Each description should explain why the change is needed, be concise and lowercase.
|
|
1846
|
-
|
|
1847
|
-
The "deletions" array should list files that should be removed (e.g. duplicate skills, stale configs). Include a reason for each. Omit the array or leave empty if nothing should be deleted.
|
|
1848
|
-
|
|
1849
|
-
SCORING CRITERIA \u2014 your output is scored deterministically. Optimize for 100/100:
|
|
1810
|
+
Keep skill content under 200 lines. Focus on actionable instructions, not documentation prose.`;
|
|
1811
|
+
var SCORING_CRITERIA = `SCORING CRITERIA \u2014 your output is scored deterministically against the actual filesystem. Optimize for 100/100:
|
|
1850
1812
|
|
|
1851
1813
|
Existence (25 pts):
|
|
1852
|
-
- CLAUDE.md exists (6 pts) \u2014 always generate for claude
|
|
1853
|
-
- AGENTS.md exists (6 pts) \u2014 always generate for codex target
|
|
1854
|
-
- Skills configured (8 pts) \u2014 generate
|
|
1855
|
-
- MCP servers
|
|
1856
|
-
-
|
|
1814
|
+
- CLAUDE.md exists (6 pts) \u2014 always generate for claude targets
|
|
1815
|
+
- AGENTS.md exists (6 pts) \u2014 always generate for codex target
|
|
1816
|
+
- Skills configured (8 pts) \u2014 generate 3+ skills for full points
|
|
1817
|
+
- MCP servers referenced (3 pts) \u2014 mention detected MCP integrations in your config text
|
|
1818
|
+
- When cursor is targeted: Cursor rules exist (3+3 pts), cross-platform parity (2 pts)
|
|
1857
1819
|
|
|
1858
1820
|
Quality (25 pts):
|
|
1859
|
-
-
|
|
1860
|
-
- Concise
|
|
1861
|
-
-
|
|
1821
|
+
- Executable content (8 pts) \u2014 include 3+ code blocks with actual project commands (3 blocks = full points, 2 = 6pts, 1 = 3pts)
|
|
1822
|
+
- Concise config (6 pts) \u2014 total tokens across ALL config files must be under 2000 for full points (3500=5pts, 5000=4pts, 8000+=low)
|
|
1823
|
+
- Concrete instructions (4 pts) \u2014 every line should reference specific files, paths, or code in backticks. Avoid generic prose like "follow best practices" or "write clean code".
|
|
1862
1824
|
- No directory tree listings (3 pts) \u2014 do NOT include tree-style file listings in code blocks
|
|
1863
|
-
- No
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
-
|
|
1868
|
-
-
|
|
1869
|
-
|
|
1870
|
-
Accuracy (15 pts) \u2014
|
|
1871
|
-
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
Freshness & Safety (10 pts):
|
|
1880
|
-
- No secrets in configs (4 pts) \u2014 never include API keys, tokens, or credentials
|
|
1881
|
-
- Permissions configured (2 pts) \u2014 handled by caliber, not your responsibility
|
|
1882
|
-
|
|
1883
|
-
Bonus (5 pts):
|
|
1884
|
-
- Hooks configured (2 pts), AGENTS.md (1 pt), OpenSkills format (2 pts) \u2014 handled by caliber
|
|
1885
|
-
|
|
1886
|
-
OUTPUT SIZE CONSTRAINTS \u2014 these are critical:
|
|
1825
|
+
- No duplicate content (2 pts) \u2014 don't repeat the same content across CLAUDE.md and cursor rules
|
|
1826
|
+
- Structured with headings (2 pts) \u2014 use at least 3 ## sections and bullet lists
|
|
1827
|
+
|
|
1828
|
+
Grounding (20 pts) \u2014 CRITICAL:
|
|
1829
|
+
- Project grounding (12 pts) \u2014 reference the project's actual directories and files by name. The scoring checks which project dirs/files from the file tree appear in your config. Mention key directories and files. (50%+ coverage = full points, 35% = 9pts, 20% = 6pts, 10% = 3pts)
|
|
1830
|
+
- Reference density (8 pts) \u2014 use backticks and inline code extensively. Every file path, command, or identifier should be in backticks. Higher density of backtick references per line = higher score. (40%+ = full, 25% = 6pts, 15% = 4pts)
|
|
1831
|
+
|
|
1832
|
+
Accuracy (15 pts) \u2014 CRITICAL:
|
|
1833
|
+
- References valid (8 pts) \u2014 ONLY reference file paths that exist in the provided file tree. Every path in backticks is validated against the filesystem. If you write a path that doesn't exist, you LOSE points.
|
|
1834
|
+
- Config drift (7 pts) \u2014 handled automatically by caliber (git-based), not your responsibility.
|
|
1835
|
+
|
|
1836
|
+
Safety: Never include API keys, tokens, or credentials in config files.
|
|
1837
|
+
|
|
1838
|
+
Note: Permissions, hooks, freshness tracking, and OpenSkills frontmatter are scored automatically by caliber \u2014 do not optimize for them.`;
|
|
1839
|
+
var OUTPUT_SIZE_CONSTRAINTS = `OUTPUT SIZE CONSTRAINTS \u2014 these are critical:
|
|
1887
1840
|
- CLAUDE.md / AGENTS.md: MUST be under 150 lines for maximum score. Aim for 100-140 lines. Be concise \u2014 commands, architecture overview, and key conventions. Use bullet points and tables, not prose.
|
|
1888
|
-
- Skills: generate 3-6 skills per target platform based on project complexity. Each skill should cover a distinct tool, workflow, or domain \u2014 don't pad with generic skills.
|
|
1889
1841
|
- Each skill content: max 150 lines. Focus on patterns and examples, not exhaustive docs.
|
|
1890
1842
|
- Cursor rules: max 5 .mdc files.
|
|
1891
1843
|
- If the project is large, prioritize depth on the 3-4 most critical tools over breadth across everything.`;
|
|
1892
|
-
var
|
|
1844
|
+
var GENERATION_SYSTEM_PROMPT = `${ROLE_AND_CONTEXT}
|
|
1893
1845
|
|
|
1894
|
-
|
|
1895
|
-
- If no existing configs exist \u2192 generate an initial setup from scratch.
|
|
1896
|
-
- If existing configs are provided \u2192 audit them and suggest targeted improvements. Preserve accurate content \u2014 don't rewrite what's already correct.
|
|
1846
|
+
${CONFIG_FILE_TYPES}
|
|
1897
1847
|
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1848
|
+
Audit checklist (when existing configs are provided):
|
|
1849
|
+
1. CLAUDE.md / README accuracy \u2014 do documented commands, paths, and architecture match the actual codebase?
|
|
1850
|
+
2. Missing skills \u2014 are there detected tools/frameworks that should have dedicated skills?
|
|
1851
|
+
3. Duplicate or overlapping skills \u2014 can any be merged or removed?
|
|
1852
|
+
4. Undocumented conventions \u2014 are there code patterns (commit style, async patterns, error handling) not captured in docs?
|
|
1853
|
+
5. Stale references \u2014 do docs mention removed files, renamed commands, or outdated patterns?
|
|
1903
1854
|
|
|
1904
|
-
|
|
1855
|
+
${EXCLUSIONS}
|
|
1905
1856
|
|
|
1906
|
-
|
|
1857
|
+
${OUTPUT_FORMAT}
|
|
1907
1858
|
|
|
1908
|
-
|
|
1859
|
+
AgentSetup schema:
|
|
1860
|
+
{
|
|
1861
|
+
"targetAgent": ["claude", "cursor", "codex"] (array of selected agents),
|
|
1862
|
+
"fileDescriptions": {
|
|
1863
|
+
"<file-path>": "reason for this change (max 80 chars)"
|
|
1864
|
+
},
|
|
1865
|
+
"deletions": [
|
|
1866
|
+
{ "filePath": "<path>", "reason": "why remove (max 80 chars)" }
|
|
1867
|
+
],
|
|
1868
|
+
"claude": {
|
|
1869
|
+
"claudeMd": "string (markdown content for CLAUDE.md)",
|
|
1870
|
+
"skills": [{ "name": "string (kebab-case, matches directory name)", "description": "string (what this skill does and when to use it)", "content": "string (markdown body \u2014 NO frontmatter, it will be generated from name+description)" }]
|
|
1871
|
+
},
|
|
1872
|
+
"codex": {
|
|
1873
|
+
"agentsMd": "string (markdown content for AGENTS.md \u2014 the primary Codex instructions file, same quality/structure as CLAUDE.md)",
|
|
1874
|
+
"skills": [{ "name": "string (kebab-case, matches directory name)", "description": "string (what this skill does and when to use it)", "content": "string (markdown body \u2014 NO frontmatter, it will be generated from name+description)" }]
|
|
1875
|
+
},
|
|
1876
|
+
"cursor": {
|
|
1877
|
+
"skills": [{ "name": "string (kebab-case, matches directory name)", "description": "string (what this skill does and when to use it)", "content": "string (markdown body \u2014 NO frontmatter, it will be generated from name+description)" }],
|
|
1878
|
+
"rules": [{ "filename": "string.mdc", "content": "string (with frontmatter)" }]
|
|
1879
|
+
}
|
|
1880
|
+
}
|
|
1909
1881
|
|
|
1910
|
-
|
|
1882
|
+
${SKILL_FORMAT_RULES}
|
|
1911
1883
|
|
|
1912
|
-
|
|
1913
|
-
[Changes]
|
|
1914
|
-
- **file-or-skill-name**: short reason (max 10 words)
|
|
1915
|
-
[Deletions]
|
|
1916
|
-
- **file-path**: short reason (max 10 words)
|
|
1884
|
+
${FILE_DESCRIPTIONS_RULES}
|
|
1917
1885
|
|
|
1918
|
-
|
|
1886
|
+
${SCORING_CRITERIA}
|
|
1887
|
+
|
|
1888
|
+
${OUTPUT_SIZE_CONSTRAINTS}
|
|
1889
|
+
- Skills: generate 3-6 skills per target platform based on project complexity. Each skill should cover a distinct tool, workflow, or domain \u2014 don't pad with generic skills.`;
|
|
1890
|
+
var CORE_GENERATION_PROMPT = `${ROLE_AND_CONTEXT}
|
|
1891
|
+
|
|
1892
|
+
${CONFIG_FILE_TYPES}
|
|
1919
1893
|
|
|
1920
|
-
|
|
1894
|
+
${EXCLUSIONS}
|
|
1895
|
+
|
|
1896
|
+
${OUTPUT_FORMAT}
|
|
1921
1897
|
|
|
1922
1898
|
CoreSetup schema:
|
|
1923
1899
|
{
|
|
@@ -1955,40 +1931,11 @@ Skill topic description MUST follow this formula: [What it does] + [When to use
|
|
|
1955
1931
|
Include specific trigger phrases users would actually say. Also include negative triggers to prevent over-triggering.
|
|
1956
1932
|
Example: "Creates a new API endpoint following the project's route pattern. Handles request validation, error responses, and DB queries. Use when user says 'add endpoint', 'new route', 'create API', or adds files to src/routes/. Do NOT use for modifying existing routes."
|
|
1957
1933
|
|
|
1958
|
-
|
|
1959
|
-
The "deletions" array should list files that should be removed (e.g. stale configs). Omit if empty.
|
|
1934
|
+
${FILE_DESCRIPTIONS_RULES}
|
|
1960
1935
|
|
|
1961
|
-
|
|
1936
|
+
${SCORING_CRITERIA}
|
|
1962
1937
|
|
|
1963
|
-
|
|
1964
|
-
- CLAUDE.md exists (6 pts) \u2014 always generate for claude targets
|
|
1965
|
-
- AGENTS.md exists (6 pts) \u2014 always generate for codex target
|
|
1966
|
-
- Skills configured (8 pts) \u2014 generate 3+ skill topics for full points
|
|
1967
|
-
- For "both" target: .cursor/rules/ exist (3+3 pts), cross-platform parity (2 pts)
|
|
1968
|
-
|
|
1969
|
-
Quality (25 pts):
|
|
1970
|
-
- Executable content (8 pts) \u2014 include 3+ code blocks with project commands (3 blocks = full points)
|
|
1971
|
-
- Concise config (6 pts) \u2014 total tokens across ALL config files must be under 2000 for full points (5000=4pts, 8000+=low)
|
|
1972
|
-
- Concrete instructions (4 pts) \u2014 every line should reference specific files, paths, or code in backticks. Avoid generic prose.
|
|
1973
|
-
- No directory tree listings (3 pts) \u2014 do NOT include tree-style file listings
|
|
1974
|
-
- Structured with headings (2 pts) \u2014 use at least 3 ## sections and bullet lists
|
|
1975
|
-
|
|
1976
|
-
Grounding (20 pts) \u2014 CRITICAL:
|
|
1977
|
-
- Project grounding (12 pts) \u2014 reference the project's actual directories and files by name. The scoring checks which project dirs/files appear in your config. Mention key directories from the file tree.
|
|
1978
|
-
- Reference density (8 pts) \u2014 use backticks and inline code extensively. Every file path, command, or identifier should be in backticks. Higher density of specific references = higher score.
|
|
1979
|
-
|
|
1980
|
-
Accuracy (15 pts) \u2014 CRITICAL:
|
|
1981
|
-
- References valid (8 pts) \u2014 ONLY reference file paths that exist in the provided file tree. Every path in backticks is validated against the filesystem.
|
|
1982
|
-
- Config drift (7 pts) \u2014 config must match current code state
|
|
1983
|
-
|
|
1984
|
-
Freshness & Safety (10 pts):
|
|
1985
|
-
- No secrets (4 pts), Permissions (2 pts \u2014 handled by caliber), Freshness (4 pts \u2014 handled by caliber)
|
|
1986
|
-
|
|
1987
|
-
Bonus (5 pts): Hooks (2 pts), AGENTS.md (1 pt), OpenSkills format (2 pts) \u2014 handled by caliber
|
|
1988
|
-
|
|
1989
|
-
OUTPUT SIZE CONSTRAINTS:
|
|
1990
|
-
- CLAUDE.md / AGENTS.md: MUST be under 150 lines. Aim for 100-140 lines.
|
|
1991
|
-
- Cursor rules: max 5 .mdc files.
|
|
1938
|
+
${OUTPUT_SIZE_CONSTRAINTS}
|
|
1992
1939
|
- Skill topics: 3-6 per platform based on project complexity (name + description only, no content).`;
|
|
1993
1940
|
var SKILL_GENERATION_PROMPT = `You generate a single skill file for a coding agent (Claude Code, Cursor, or Codex).
|
|
1994
1941
|
|
|
@@ -2053,12 +2000,20 @@ Rules:
|
|
|
2053
2000
|
- Preserve all fields that the user did not ask to change.
|
|
2054
2001
|
- Do NOT generate mcpServers \u2014 MCP configuration is managed separately.
|
|
2055
2002
|
- Skills use OpenSkills format: name is kebab-case directory name, content is markdown body without frontmatter.
|
|
2056
|
-
- Update the "fileDescriptions" to reflect any changes you make
|
|
2003
|
+
- Update the "fileDescriptions" to reflect any changes you make.
|
|
2004
|
+
|
|
2005
|
+
Quality constraints \u2014 your changes are scored, so do not break these:
|
|
2006
|
+
- CLAUDE.md / AGENTS.md: MUST stay under 150 lines. If adding content, remove less important lines to stay within budget.
|
|
2007
|
+
- Avoid vague instructions ("follow best practices", "write clean code", "ensure quality").
|
|
2008
|
+
- Do NOT add directory tree listings in code blocks.
|
|
2009
|
+
- Use backticks for every file path, command, and identifier.
|
|
2010
|
+
- Keep skill content under 150 lines, focused on actionable instructions.
|
|
2011
|
+
- Only reference file paths that actually exist in the project.`;
|
|
2057
2012
|
var REFRESH_SYSTEM_PROMPT = `You are an expert at maintaining coding project documentation. Your job is to update existing documentation files based on code changes (git diffs).
|
|
2058
2013
|
|
|
2059
2014
|
You will receive:
|
|
2060
2015
|
1. Git diffs showing what code changed
|
|
2061
|
-
2. Current contents of documentation files (CLAUDE.md,
|
|
2016
|
+
2. Current contents of documentation files (CLAUDE.md, README.md, skills, cursor rules)
|
|
2062
2017
|
3. Project context (languages, frameworks)
|
|
2063
2018
|
|
|
2064
2019
|
Rules:
|
|
@@ -2068,23 +2023,22 @@ Rules:
|
|
|
2068
2023
|
- Don't add speculative or aspirational content
|
|
2069
2024
|
- Keep managed blocks (<!-- caliber:managed --> ... <!-- /caliber:managed -->) intact
|
|
2070
2025
|
- If a doc doesn't need updating, return null for it
|
|
2071
|
-
- For CLAUDE.md: update commands, architecture notes, conventions, key files if the diffs affect them
|
|
2072
|
-
- For AGENTS.md: same as CLAUDE.md \u2014 this is the primary instructions file for Codex users
|
|
2026
|
+
- For CLAUDE.md: update commands, architecture notes, conventions, key files if the diffs affect them. Keep under 150 lines.
|
|
2073
2027
|
- For README.md: update setup instructions, API docs, or feature descriptions if affected
|
|
2074
|
-
-
|
|
2028
|
+
- Only reference file paths that exist in the project
|
|
2029
|
+
- Use backticks for all file paths, commands, and identifiers
|
|
2075
2030
|
|
|
2076
2031
|
Return a JSON object with this exact shape:
|
|
2077
2032
|
{
|
|
2078
2033
|
"updatedDocs": {
|
|
2079
2034
|
"claudeMd": "<updated content or null>",
|
|
2080
|
-
"agentsMd": "<updated content or null>",
|
|
2081
2035
|
"readmeMd": "<updated content or null>",
|
|
2036
|
+
"cursorrules": "<updated content or null>",
|
|
2082
2037
|
"cursorRules": [{"filename": "name.mdc", "content": "..."}] or null,
|
|
2083
|
-
"cursorSkills": [{"slug": "string", "name": "string", "content": "..."}] or null,
|
|
2084
2038
|
"claudeSkills": [{"filename": "name.md", "content": "..."}] or null
|
|
2085
2039
|
},
|
|
2086
2040
|
"changesSummary": "<1-2 sentence summary of what was updated and why>",
|
|
2087
|
-
"docsUpdated": ["CLAUDE.md", "
|
|
2041
|
+
"docsUpdated": ["CLAUDE.md", "README.md"]
|
|
2088
2042
|
}
|
|
2089
2043
|
|
|
2090
2044
|
Respond with ONLY the JSON object, no markdown fences or extra text.`;
|
|
@@ -2113,7 +2067,7 @@ Rules for the learned section:
|
|
|
2113
2067
|
- Be additive: keep all existing learned items, add new ones, remove duplicates
|
|
2114
2068
|
- Never repeat instructions already present in the main CLAUDE.md
|
|
2115
2069
|
- Each bullet must be specific and actionable \u2014 no vague advice
|
|
2116
|
-
- Maximum ~
|
|
2070
|
+
- Maximum ~30 bullet items total
|
|
2117
2071
|
- Group related items under subheadings if there are many
|
|
2118
2072
|
- If there's nothing meaningful to learn, return null
|
|
2119
2073
|
|
|
@@ -2148,7 +2102,7 @@ Be thorough \u2014 look for signals in:
|
|
|
2148
2102
|
- Configuration files (e.g. next.config.js implies Next.js, .tf files imply Terraform + cloud providers)
|
|
2149
2103
|
- Infrastructure-as-code files (Terraform, CloudFormation, Pulumi, Dockerfiles, k8s manifests)
|
|
2150
2104
|
- CI/CD configs (.github/workflows, .gitlab-ci.yml, Jenkinsfile)
|
|
2151
|
-
-
|
|
2105
|
+
- Dockerfile base images (e.g. FROM python:3.11 implies Python, FROM node:20 implies Node.js)
|
|
2152
2106
|
|
|
2153
2107
|
Only include items you're confident about. Return ONLY the JSON object.`;
|
|
2154
2108
|
|
package/package.json
CHANGED