Skip to content

feat: improve agentic AI development flow and guidelines#1411

Open
jescalada wants to merge 8 commits intofinos:mainfrom
jescalada:add-claude-md
Open

feat: improve agentic AI development flow and guidelines#1411
jescalada wants to merge 8 commits intofinos:mainfrom
jescalada:add-claude-md

Conversation

@jescalada
Copy link
Contributor

@jescalada jescalada commented Feb 21, 2026

Closes #1410.

Note: This PR summary was generated via the /summary command and manually tweaked.

What: Add CLAUDE.md and a set of Cursor/Claude commands under .claude/commands to support AI-assisted development and consistent agent workflows.

Why: Agents need proper context for GitProxy’s architecture and conventions. Furthermore, the new commands help speed up typical tasks such as issue creation, PR summaries, docs updates, linting, and review follow-up to improve the dev experience and help humans focus on quality control and more pressing issues.

Changes:

  • Add CLAUDE.md with project overview, build/run steps, high-level architecture (proxy, service, config, UI), development guidelines, and agent workflow (delegation).
  • Add .claude/commands/ with seven commands:
    • address-review (apply review feedback)
    • commit (incremental conventional commits)
    • docs (update README/Architecture/CLAUDE from branch changes)
    • implement (issue → branch → code → commit → summary)
    • issue (summarize issue for implementation)
    • lint (run lint/format)
    • summary (PR description summary).
  • Update .gitignore to ignore /plans (where command outputs are stored).
  • Update README.md Contributing section to point to CLAUDE.md and .claude/commands for AI-assisted development.

How to verify:

  1. Open CLAUDE.md and confirm it describes proxy, service, config, UI, and push/pull/default chains.
  2. Run each command (e.g. /summary, /docs) and confirm they behave as described in their files.
  3. Confirm plans/ is ignored by Git and that README.md links to CLAUDE.md and .claude/commands.

Credit goes to @sudiptob2 for original implementation in Armada Spark!

@jescalada jescalada requested a review from a team as a code owner February 21, 2026 06:56
@netlify
Copy link

netlify bot commented Feb 21, 2026

Deploy Preview for endearing-brigadeiros-63f9d0 canceled.

Name Link
🔨 Latest commit 2d65d3f
🔍 Latest deploy log https://app.netlify.com/projects/endearing-brigadeiros-63f9d0/deploys/699e8504cdb64b0008d65024

@codecov
Copy link

codecov bot commented Feb 21, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 81.78%. Comparing base (6713757) to head (2d65d3f).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1411   +/-   ##
=======================================
  Coverage   81.78%   81.78%           
=======================================
  Files          67       67           
  Lines        4766     4766           
  Branches      827      827           
=======================================
  Hits         3898     3898           
  Misses        852      852           
  Partials       16       16           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Contributor

@dcoric dcoric left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice improvement! This should help steer AI-assisted code changes toward consistent repo rules. I left a couple of small nits.

One additional improvement: make the setup cross-tool friendly by using a canonical policy file + thin bridge files.

Proposal:

  1. Use AGENTS.md as the canonical repo policy.
  2. In AGENTS.md, add a rule like: “For command workflows, read .claude/commands/*.md.”
  3. Add thin tool-specific bridge files:
    • CLAUDE.md -> points to AGENTS.md + .claude/commands
    • GEMINI.md -> points to AGENTS.md (or mirrors the key rules)
    • .cursor/rules/00-agents.mdc (or .md) -> points to AGENTS.md

Notes / compatibility:

  • Codex: uses AGENTS.md.
  • Cursor: uses AGENTS.md / CLAUDE.md and .cursor/rules (commands via .cursor/commands).
  • Gemini CLI: defaults to GEMINI.md, but can be configured to read AGENTS.md via context.fileName.
  • Claude Code: custom slash commands live in .claude/commands.

Refs:

For a real-world OSS example of this pattern, see:
https://github.com/ghostty-org/ghostty

It demonstrates a clean canonical policy file with tool-specific bridges, which aligns well with this proposal.

- Never modify code without programmer approval
- Show exact reply text before queuing it
- The programmer can modify any reply at any point
- Always checkout with `--detach` to avoid creating local branches
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This conflicts with git push rule from line 46 in this file. Pushing detached HEAD will fail with regular git push as instructed. I think this should be limited for a review purposes, or extend git push to use git push <remote> HEAD:<pr-head-branch> which will work with --detach


1. Save the current branch name: `git rev-parse --abbrev-ref HEAD`
2. Checkout the PR branch: `gh pr checkout <number> --detach`
3. Fetch all review comments:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a suggestion as REST endpoint does not return resolved status on comments, it just lists them, there is alternative to use gh command with GraphQL:

gh api graphql -f query='
query($owner:String!, $repo:String!, $number:Int!, $cursor:String) {
  repository(owner:$owner, name:$repo) {
    pullRequest(number:$number) {
      reviewThreads(first:100, after:$cursor) {
        pageInfo { hasNextPage endCursor }
        nodes {
          isResolved
          isOutdated
          path
          line
          originalLine
          comments(first:100) {
            nodes {
              databaseId
              body
              author { login }
              createdAt
              url
            }
          }
        }
      }
    }
  }
}' -F owner={owner} -F repo={repo} -F number=<number> -F cursor=<cursor>

That gives unresolved review threads with the latest comment details;
This avoids double tool-calling

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve and standardize Agentic AI tooling

3 participants