Skip to content

Commit f6cc0f2

Browse files
govindkavaturi-artGk
andauthored
docs: update CLAUDE.md with definitive pipeline and PR process (#10)
Co-authored-by: Gk <gk@Gks-MacBook-Pro.local>
1 parent 57475f2 commit f6cc0f2

File tree

1 file changed

+64
-22
lines changed

1 file changed

+64
-22
lines changed

CLAUDE.md

Lines changed: 64 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,64 @@
1-
# CLAUDE.md - Rules for AI agents working on this repo
2-
3-
## Branch protection
4-
- Never bypass branch protection or force merge failing checks
5-
- Never use --no-verify or skip pre-commit hooks
6-
- All changes to main must pass required status checks (sdk-integration, staging-integration)
7-
- If a check fails, fix the root cause before merging
8-
9-
## Publishing
10-
- PyPI publish triggers only on version tags (v*)
11-
- Uses trusted publishing (OIDC) - no API tokens
12-
- Never store PYPI_TOKEN in source or secrets
13-
14-
## Security
15-
- Never hardcode API keys, secrets, or tokens in source code
16-
- Use environment variables or GitHub secrets for all credentials
17-
- All GitHub Actions must be pinned to commit SHAs, not version tags
18-
- Staging keys go in CUEAPI_STAGING_API_KEY GitHub secret, never in code
19-
20-
## Code quality
21-
- Run tests locally before pushing: pytest tests/ -v
22-
- Do not use em dashes in any user-facing content
1+
# Claude Code Rules
2+
3+
## Who Does What
4+
5+
**Claude Code** - writes code, opens PRs, merges when CI passes, deploys to staging and frontend sites
6+
**Argus** - tests staging, promotes to production, cuts PyPI release tags, tests docs and blog accuracy
7+
8+
## PR Process - Non-Negotiable
9+
10+
Every change must go through a PR. No direct pushes to main under any circumstances.
11+
PRs are the permanent audit trail of every change made to this codebase.
12+
Claude Code opens PRs and merges them once CI passes. No human reviewer required.
13+
CI must pass before merging - no exceptions.
14+
Never bypass branch protection or force merge.
15+
Never merge a failing CI check - fix the root cause first.
16+
17+
## Complete Pipeline
18+
19+
### cueapi (hosted API - private repo)
20+
Claude Code: code change -> open PR -> sdk-integration + deploy-staging CI must pass -> merge -> Railway staging deploy
21+
Argus: runs 246 staging tests -> all pass -> promotes to production
22+
23+
### cueapi-core (open source)
24+
Claude Code: code change -> open PR -> sdk-integration CI must pass -> merge
25+
Argus: runs full pytest suite -> confirms green
26+
27+
### cueapi-python
28+
Claude Code: code change -> open PR -> sdk-integration CI must pass -> merge
29+
Argus: runs SDK tests -> all pass -> cuts version tag -> PyPI auto-publishes
30+
31+
### cueapi-cli
32+
Claude Code: code change -> open PR -> test CI must pass -> merge
33+
Argus: runs CLI tests -> all pass -> cuts version tag -> PyPI auto-publishes
34+
35+
### Marketing site (cueapi.ai)
36+
Claude Code: code change -> open PR -> CI passes -> merge -> Cloudflare Pages auto-deploys to production
37+
Argus: not involved
38+
39+
### Docs (docs.cueapi.ai)
40+
Claude Code: code change -> open PR -> CI passes -> merge -> Cloudflare Pages auto-deploys
41+
Argus: crawls after deploy -> tests all code examples against real API -> verifies all links -> flags inaccuracies
42+
43+
### Blog (blog.cueapi.ai)
44+
Claude Code: code change -> open PR -> CI passes -> merge -> Cloudflare Pages auto-deploys
45+
Argus: crawls after deploy -> tests all code snippets -> verifies package versions -> flags inaccuracies
46+
47+
## Required CI Checks
48+
cueapi-core: sdk-integration, deploy-staging
49+
cueapi-python: sdk-integration
50+
cueapi-cli: test
51+
No PR review required - CI and Argus are the gates
52+
53+
## Security Rules
54+
1. Never hardcode secrets, API keys, or tokens anywhere
55+
2. Always use environment variables: os.environ.get("SECRET_NAME")
56+
3. Never commit .env files
57+
4. All GitHub Actions must be pinned to commit SHAs not tags
58+
5. If you find a hardcoded secret, remove it and rotate it immediately
59+
60+
## Style Rules
61+
1. No em dashes anywhere in any content
62+
2. No AI-sounding language or corporate speak
63+
3. Short, direct sentences
64+

0 commit comments

Comments
 (0)