From 565e77e680789d48ef998b5a25269485020634ad Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:40 +0000 Subject: [PATCH 01/11] feat: add repopilot ECC bundle (.claude/ecc-tools.json) --- .claude/ecc-tools.json | 272 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 272 insertions(+) create mode 100644 .claude/ecc-tools.json diff --git a/.claude/ecc-tools.json b/.claude/ecc-tools.json new file mode 100644 index 0000000..e0e1d8f --- /dev/null +++ b/.claude/ecc-tools.json @@ -0,0 +1,272 @@ +{ + "version": "1.3", + "schemaVersion": "1.0", + "generatedBy": "ecc-tools", + "generatedAt": "2026-07-01T06:31:17.949Z", + "repo": "https://github.com/sreerevanth/repopilot", + "referenceSetReadiness": { + "score": 0, + "present": 0, + "total": 7, + "items": [ + { + "id": "deep-analyzer-corpus", + "label": "Deep analyzer corpus", + "status": "missing", + "evidence": [], + "recommendation": "Add analyzer fixture, golden, benchmark, or reference-set files that can catch analyzer regressions." + }, + { + "id": "rag-evaluator", + "label": "RAG/evaluator comparison", + "status": "missing", + "evidence": [], + "recommendation": "Add retrieval or evaluator reference-set comparison fixtures with expected ranking behavior." + }, + { + "id": "pr-salvage", + "label": "PR salvage/review corpus", + "status": "missing", + "evidence": [], + "recommendation": "Add stale-PR, review-thread, reopen-flow, or salvage reference cases for queue cleanup automation." + }, + { + "id": "discussion-triage", + "label": "Discussion triage corpus", + "status": "missing", + "evidence": [], + "recommendation": "Add public discussion triage fixtures, golden cases, or reference sets for informational, answered, and no-response classifications." + }, + { + "id": "harness-compatibility", + "label": "Harness compatibility", + "status": "missing", + "evidence": [], + "recommendation": "Add cross-harness, adapter-compliance, or harness-audit evidence for Claude, Codex, OpenCode, Zed, dmux, and agent surfaces." + }, + { + "id": "security-evidence", + "label": "Security evidence", + "status": "missing", + "evidence": [], + "recommendation": "Attach security evidence such as SBOMs, SARIF, audit reports, or AgentShield evidence packs." + }, + { + "id": "ci-failure-mode", + "label": "CI failure-mode evidence", + "status": "missing", + "evidence": [], + "recommendation": "Add captured CI failure logs, dry-run fixtures, or troubleshooting docs for common workflow failure modes." + } + ] + }, + "profiles": { + "requested": "full", + "recommended": "full", + "effective": "developer", + "requestedAlias": "full", + "recommendedAlias": "full", + "effectiveAlias": "developer" + }, + "requestedProfile": "full", + "profile": "developer", + "recommendedProfile": "full", + "effectiveProfile": "developer", + "tier": "free", + "requestedComponents": [ + "repo-baseline", + "workflow-automation", + "security-audits", + "research-tooling", + "team-rollout", + "governance-controls" + ], + "selectedComponents": [ + "repo-baseline", + "workflow-automation" + ], + "requestedAddComponents": [], + "requestedRemoveComponents": [], + "blockedRemovalComponents": [], + "tierFilteredComponents": [ + "security-audits", + "research-tooling", + "team-rollout", + "governance-controls" + ], + "requestedRootPackages": [ + "runtime-core", + "workflow-pack", + "agentshield-pack", + "research-pack", + "team-config-sync", + "enterprise-controls" + ], + "selectedRootPackages": [ + "runtime-core", + "workflow-pack" + ], + "requestedPackages": [ + "runtime-core", + "workflow-pack", + "agentshield-pack", + "research-pack", + "team-config-sync", + "enterprise-controls" + ], + "requestedAddPackages": [], + "requestedRemovePackages": [], + "selectedPackages": [ + "runtime-core", + "workflow-pack" + ], + "packages": [ + "runtime-core", + "workflow-pack" + ], + "blockedRemovalPackages": [], + "tierFilteredRootPackages": [ + "agentshield-pack", + "research-pack", + "team-config-sync", + "enterprise-controls" + ], + "tierFilteredPackages": [ + "agentshield-pack", + "research-pack", + "team-config-sync", + "enterprise-controls" + ], + "conflictingPackages": [], + "dependencyGraph": { + "runtime-core": [], + "workflow-pack": [ + "runtime-core" + ] + }, + "resolutionOrder": [ + "runtime-core", + "workflow-pack" + ], + "requestedModules": [ + "runtime-core", + "workflow-pack", + "agentshield-pack", + "research-pack", + "team-config-sync", + "enterprise-controls" + ], + "selectedModules": [ + "runtime-core", + "workflow-pack" + ], + "modules": [ + "runtime-core", + "workflow-pack" + ], + "managedFiles": [ + ".claude/skills/repopilot/SKILL.md", + ".agents/skills/repopilot/SKILL.md", + ".agents/skills/repopilot/agents/openai.yaml", + ".claude/identity.json", + ".codex/config.toml", + ".codex/AGENTS.md", + ".codex/agents/explorer.toml", + ".codex/agents/reviewer.toml", + ".codex/agents/docs-researcher.toml", + ".claude/homunculus/instincts/inherited/repopilot-instincts.yaml" + ], + "packageFiles": { + "runtime-core": [ + ".claude/skills/repopilot/SKILL.md", + ".agents/skills/repopilot/SKILL.md", + ".agents/skills/repopilot/agents/openai.yaml", + ".claude/identity.json", + ".codex/config.toml", + ".codex/AGENTS.md", + ".codex/agents/explorer.toml", + ".codex/agents/reviewer.toml", + ".codex/agents/docs-researcher.toml", + ".claude/homunculus/instincts/inherited/repopilot-instincts.yaml" + ] + }, + "moduleFiles": { + "runtime-core": [ + ".claude/skills/repopilot/SKILL.md", + ".agents/skills/repopilot/SKILL.md", + ".agents/skills/repopilot/agents/openai.yaml", + ".claude/identity.json", + ".codex/config.toml", + ".codex/AGENTS.md", + ".codex/agents/explorer.toml", + ".codex/agents/reviewer.toml", + ".codex/agents/docs-researcher.toml", + ".claude/homunculus/instincts/inherited/repopilot-instincts.yaml" + ] + }, + "files": [ + { + "moduleId": "runtime-core", + "path": ".claude/skills/repopilot/SKILL.md", + "description": "Repository-specific Claude Code skill generated from git history." + }, + { + "moduleId": "runtime-core", + "path": ".agents/skills/repopilot/SKILL.md", + "description": "Codex-facing copy of the generated repository skill." + }, + { + "moduleId": "runtime-core", + "path": ".agents/skills/repopilot/agents/openai.yaml", + "description": "Codex skill metadata so the repo skill appears cleanly in the skill interface." + }, + { + "moduleId": "runtime-core", + "path": ".claude/identity.json", + "description": "Suggested identity.json baseline derived from repository conventions." + }, + { + "moduleId": "runtime-core", + "path": ".codex/config.toml", + "description": "Repo-local Codex MCP and multi-agent baseline aligned with ECC defaults." + }, + { + "moduleId": "runtime-core", + "path": ".codex/AGENTS.md", + "description": "Codex usage guide that points at the generated repo skill and workflow bundle." + }, + { + "moduleId": "runtime-core", + "path": ".codex/agents/explorer.toml", + "description": "Read-only explorer role config for Codex multi-agent work." + }, + { + "moduleId": "runtime-core", + "path": ".codex/agents/reviewer.toml", + "description": "Read-only reviewer role config focused on correctness and security." + }, + { + "moduleId": "runtime-core", + "path": ".codex/agents/docs-researcher.toml", + "description": "Read-only docs researcher role config for API verification." + }, + { + "moduleId": "runtime-core", + "path": ".claude/homunculus/instincts/inherited/repopilot-instincts.yaml", + "description": "Continuous-learning instincts derived from repository patterns." + } + ], + "workflows": [], + "adapters": { + "claudeCode": { + "skillPath": ".claude/skills/repopilot/SKILL.md", + "identityPath": ".claude/identity.json", + "commandPaths": [] + }, + "codex": { + "configPath": ".codex/config.toml", + "agentsGuidePath": ".codex/AGENTS.md", + "skillPath": ".agents/skills/repopilot/SKILL.md" + } + } +} \ No newline at end of file From 9eb40365a6ee3de8b0e1bac79400e797fb1c44b9 Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:41 +0000 Subject: [PATCH 02/11] feat: add repopilot ECC bundle (.claude/skills/repopilot/SKILL.md) --- .claude/skills/repopilot/SKILL.md | 87 +++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 .claude/skills/repopilot/SKILL.md diff --git a/.claude/skills/repopilot/SKILL.md b/.claude/skills/repopilot/SKILL.md new file mode 100644 index 0000000..06f3689 --- /dev/null +++ b/.claude/skills/repopilot/SKILL.md @@ -0,0 +1,87 @@ +```markdown +# repopilot Development Patterns + +> Auto-generated skill from repository analysis + +## Overview +This skill teaches you the core development patterns and conventions used in the `repopilot` Python codebase. You'll learn about file organization, code style, commit patterns, and how to write and run tests. The repository uses Python with no detected framework, and follows clear naming and import/export conventions to ensure maintainability and readability. + +## Coding Conventions + +### File Naming +- Use **snake_case** for all file names. + - Example: `data_processor.py`, `user_utils.py` + +### Import Style +- Use **relative imports** within the package. + - Example: + ```python + from .utils import helper_function + ``` + +### Export Style +- Use **named exports** (explicitly define what is exported). + - Example: + ```python + __all__ = ['main_function', 'HelperClass'] + ``` + +### Commit Patterns +- **Type:** Mixed (features, fixes, etc.) +- **Prefix:** Use `feat` for new features. + - Example commit message: `feat: add support for batch processing` +- **Length:** Keep commit messages concise (average ~53 characters). + +## Workflows + +### Add a New Feature +**Trigger:** When you need to implement a new feature. +**Command:** `/add-feature` + +1. Create a new Python file using snake_case if needed. +2. Implement the feature using relative imports for internal modules. +3. Add named exports to the file. +4. Write or update tests in a corresponding `*.test.*` file. +5. Commit your changes with a message starting with `feat:`. + - Example: `feat: implement data normalization utility` + +### Run Tests +**Trigger:** When you want to verify your code changes. +**Command:** `/run-tests` + +1. Identify all test files matching the pattern `*.test.*`. +2. Run the tests using your preferred Python test runner (e.g., `pytest`, `unittest`). +3. Review the results and fix any failing tests. + +### Refactor Code +**Trigger:** When improving code structure or readability. +**Command:** `/refactor` + +1. Rename files or functions to follow snake_case if necessary. +2. Update imports to use relative paths. +3. Ensure all exports are named. +4. Update or add tests as needed. +5. Commit changes with a clear message (e.g., `refactor: improve import structure`). + +## Testing Patterns + +- **Framework:** Not explicitly specified; use standard Python testing tools. +- **File Pattern:** Test files are named using `*.test.*` (e.g., `module.test.py`). +- **Example Test File:** + ```python + # my_module.test.py + import unittest + from .my_module import my_function + + class TestMyFunction(unittest.TestCase): + def test_basic(self): + self.assertEqual(my_function(2), 4) + ``` + +## Commands +| Command | Purpose | +|----------------|-------------------------------------------| +| /add-feature | Start workflow to add a new feature | +| /run-tests | Run all tests in the repository | +| /refactor | Start workflow to refactor code | +``` From 707d703b254ee2ae6459e9e11eb21c0ddb46dd7f Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:43 +0000 Subject: [PATCH 03/11] feat: add repopilot ECC bundle (.agents/skills/repopilot/SKILL.md) --- .agents/skills/repopilot/SKILL.md | 87 +++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 .agents/skills/repopilot/SKILL.md diff --git a/.agents/skills/repopilot/SKILL.md b/.agents/skills/repopilot/SKILL.md new file mode 100644 index 0000000..06f3689 --- /dev/null +++ b/.agents/skills/repopilot/SKILL.md @@ -0,0 +1,87 @@ +```markdown +# repopilot Development Patterns + +> Auto-generated skill from repository analysis + +## Overview +This skill teaches you the core development patterns and conventions used in the `repopilot` Python codebase. You'll learn about file organization, code style, commit patterns, and how to write and run tests. The repository uses Python with no detected framework, and follows clear naming and import/export conventions to ensure maintainability and readability. + +## Coding Conventions + +### File Naming +- Use **snake_case** for all file names. + - Example: `data_processor.py`, `user_utils.py` + +### Import Style +- Use **relative imports** within the package. + - Example: + ```python + from .utils import helper_function + ``` + +### Export Style +- Use **named exports** (explicitly define what is exported). + - Example: + ```python + __all__ = ['main_function', 'HelperClass'] + ``` + +### Commit Patterns +- **Type:** Mixed (features, fixes, etc.) +- **Prefix:** Use `feat` for new features. + - Example commit message: `feat: add support for batch processing` +- **Length:** Keep commit messages concise (average ~53 characters). + +## Workflows + +### Add a New Feature +**Trigger:** When you need to implement a new feature. +**Command:** `/add-feature` + +1. Create a new Python file using snake_case if needed. +2. Implement the feature using relative imports for internal modules. +3. Add named exports to the file. +4. Write or update tests in a corresponding `*.test.*` file. +5. Commit your changes with a message starting with `feat:`. + - Example: `feat: implement data normalization utility` + +### Run Tests +**Trigger:** When you want to verify your code changes. +**Command:** `/run-tests` + +1. Identify all test files matching the pattern `*.test.*`. +2. Run the tests using your preferred Python test runner (e.g., `pytest`, `unittest`). +3. Review the results and fix any failing tests. + +### Refactor Code +**Trigger:** When improving code structure or readability. +**Command:** `/refactor` + +1. Rename files or functions to follow snake_case if necessary. +2. Update imports to use relative paths. +3. Ensure all exports are named. +4. Update or add tests as needed. +5. Commit changes with a clear message (e.g., `refactor: improve import structure`). + +## Testing Patterns + +- **Framework:** Not explicitly specified; use standard Python testing tools. +- **File Pattern:** Test files are named using `*.test.*` (e.g., `module.test.py`). +- **Example Test File:** + ```python + # my_module.test.py + import unittest + from .my_module import my_function + + class TestMyFunction(unittest.TestCase): + def test_basic(self): + self.assertEqual(my_function(2), 4) + ``` + +## Commands +| Command | Purpose | +|----------------|-------------------------------------------| +| /add-feature | Start workflow to add a new feature | +| /run-tests | Run all tests in the repository | +| /refactor | Start workflow to refactor code | +``` From 77a8d8472ccde635321f6326ad4baf156b5cb121 Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:44 +0000 Subject: [PATCH 04/11] feat: add repopilot ECC bundle (.agents/skills/repopilot/agents/openai.yaml) --- .agents/skills/repopilot/agents/openai.yaml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .agents/skills/repopilot/agents/openai.yaml diff --git a/.agents/skills/repopilot/agents/openai.yaml b/.agents/skills/repopilot/agents/openai.yaml new file mode 100644 index 0000000..e663e47 --- /dev/null +++ b/.agents/skills/repopilot/agents/openai.yaml @@ -0,0 +1,6 @@ +interface: + display_name: "Repopilot" + short_description: "Repo-specific patterns and workflows for repopilot" + default_prompt: "Use the repopilot repo skill to follow existing architecture, testing, and workflow conventions." +policy: + allow_implicit_invocation: true \ No newline at end of file From 3845871e1f6238b22e080f4549c7f24cdd2ed0ec Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:45 +0000 Subject: [PATCH 05/11] feat: add repopilot ECC bundle (.claude/identity.json) --- .claude/identity.json | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 .claude/identity.json diff --git a/.claude/identity.json b/.claude/identity.json new file mode 100644 index 0000000..cf1d08d --- /dev/null +++ b/.claude/identity.json @@ -0,0 +1,14 @@ +{ + "version": "2.0", + "technicalLevel": "technical", + "preferredStyle": { + "verbosity": "detailed", + "codeComments": true, + "explanations": true + }, + "domains": [ + "python" + ], + "suggestedBy": "ecc-tools-repo-analysis", + "createdAt": "2026-07-01T06:31:34.491Z" +} \ No newline at end of file From 1b18e7970899aaa0ea191e33570ca90cb540a931 Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:46 +0000 Subject: [PATCH 06/11] feat: add repopilot ECC bundle (.codex/config.toml) --- .codex/config.toml | 48 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 .codex/config.toml diff --git a/.codex/config.toml b/.codex/config.toml new file mode 100644 index 0000000..bc1ee67 --- /dev/null +++ b/.codex/config.toml @@ -0,0 +1,48 @@ +#:schema https://developers.openai.com/codex/config-schema.json + +# ECC Tools generated Codex baseline +approval_policy = "on-request" +sandbox_mode = "workspace-write" +web_search = "live" + +[mcp_servers.github] +command = "npx" +args = ["-y", "@modelcontextprotocol/server-github"] + +[mcp_servers.context7] +command = "npx" +args = ["-y", "@upstash/context7-mcp@latest"] + +[mcp_servers.exa] +url = "https://mcp.exa.ai/mcp" + +[mcp_servers.memory] +command = "npx" +args = ["-y", "@modelcontextprotocol/server-memory"] + +[mcp_servers.playwright] +command = "npx" +args = ["-y", "@playwright/mcp@latest", "--extension"] + +[mcp_servers.sequential-thinking] +command = "npx" +args = ["-y", "@modelcontextprotocol/server-sequential-thinking"] + +[features] +multi_agent = true + +[agents] +max_threads = 6 +max_depth = 1 + +[agents.explorer] +description = "Read-only codebase explorer for gathering evidence before changes are proposed." +config_file = "agents/explorer.toml" + +[agents.reviewer] +description = "PR reviewer focused on correctness, security, and missing tests." +config_file = "agents/reviewer.toml" + +[agents.docs_researcher] +description = "Documentation specialist that verifies APIs, framework behavior, and release notes." +config_file = "agents/docs-researcher.toml" \ No newline at end of file From 7f3e8d776f936132a00b50630e416aac0643e29f Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:47 +0000 Subject: [PATCH 07/11] feat: add repopilot ECC bundle (.codex/AGENTS.md) --- .codex/AGENTS.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 .codex/AGENTS.md diff --git a/.codex/AGENTS.md b/.codex/AGENTS.md new file mode 100644 index 0000000..19b4bcf --- /dev/null +++ b/.codex/AGENTS.md @@ -0,0 +1,26 @@ +# ECC for Codex CLI + +This supplements the root `AGENTS.md` with a repo-local ECC baseline. + +## Repo Skill + +- Repo-generated Codex skill: `.agents/skills/repopilot/SKILL.md` +- Claude-facing companion skill: `.claude/skills/repopilot/SKILL.md` +- Keep user-specific credentials and private MCPs in `~/.codex/config.toml`, not in this repo. + +## MCP Baseline + +Treat `.codex/config.toml` as the default ECC-safe baseline for work in this repository. +The generated baseline enables GitHub, Context7, Exa, Memory, Playwright, and Sequential Thinking. + +## Multi-Agent Support + +- Explorer: read-only evidence gathering +- Reviewer: correctness, security, and regression review +- Docs researcher: API and release-note verification + +## Workflow Files + +- No dedicated workflow command files were generated for this repo. + +Use these workflow files as reusable task scaffolds when the detected repository workflows recur. \ No newline at end of file From ff7518f4f0945a9c88667777f227cfcf6bc857d3 Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:48 +0000 Subject: [PATCH 08/11] feat: add repopilot ECC bundle (.codex/agents/explorer.toml) --- .codex/agents/explorer.toml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 .codex/agents/explorer.toml diff --git a/.codex/agents/explorer.toml b/.codex/agents/explorer.toml new file mode 100644 index 0000000..732df7a --- /dev/null +++ b/.codex/agents/explorer.toml @@ -0,0 +1,9 @@ +model = "gpt-5.4" +model_reasoning_effort = "medium" +sandbox_mode = "read-only" + +developer_instructions = """ +Stay in exploration mode. +Trace the real execution path, cite files and symbols, and avoid proposing fixes unless the parent agent asks for them. +Prefer targeted search and file reads over broad scans. +""" \ No newline at end of file From aa49dd79ff6dcbe4b164914e1c258eca1deaacc2 Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:49 +0000 Subject: [PATCH 09/11] feat: add repopilot ECC bundle (.codex/agents/reviewer.toml) --- .codex/agents/reviewer.toml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 .codex/agents/reviewer.toml diff --git a/.codex/agents/reviewer.toml b/.codex/agents/reviewer.toml new file mode 100644 index 0000000..b13ed9c --- /dev/null +++ b/.codex/agents/reviewer.toml @@ -0,0 +1,9 @@ +model = "gpt-5.4" +model_reasoning_effort = "high" +sandbox_mode = "read-only" + +developer_instructions = """ +Review like an owner. +Prioritize correctness, security, behavioral regressions, and missing tests. +Lead with concrete findings and avoid style-only feedback unless it hides a real bug. +""" \ No newline at end of file From 39dee2a4b224ca83b887d3288156d70b40f39f53 Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:50 +0000 Subject: [PATCH 10/11] feat: add repopilot ECC bundle (.codex/agents/docs-researcher.toml) --- .codex/agents/docs-researcher.toml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 .codex/agents/docs-researcher.toml diff --git a/.codex/agents/docs-researcher.toml b/.codex/agents/docs-researcher.toml new file mode 100644 index 0000000..0daae57 --- /dev/null +++ b/.codex/agents/docs-researcher.toml @@ -0,0 +1,9 @@ +model = "gpt-5.4" +model_reasoning_effort = "medium" +sandbox_mode = "read-only" + +developer_instructions = """ +Verify APIs, framework behavior, and release-note claims against primary documentation before changes land. +Cite the exact docs or file paths that support each claim. +Do not invent undocumented behavior. +""" \ No newline at end of file From 2c994d60059b57b28cfd50a9edc6c4e1c1e95727 Mon Sep 17 00:00:00 2001 From: "ecc-tools[bot]" <257055122+ecc-tools[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 06:31:51 +0000 Subject: [PATCH 11/11] feat: add repopilot ECC bundle (.claude/homunculus/instincts/inherited/repopilot-instincts.yaml) --- .../inherited/repopilot-instincts.yaml | 298 ++++++++++++++++++ 1 file changed, 298 insertions(+) create mode 100644 .claude/homunculus/instincts/inherited/repopilot-instincts.yaml diff --git a/.claude/homunculus/instincts/inherited/repopilot-instincts.yaml b/.claude/homunculus/instincts/inherited/repopilot-instincts.yaml new file mode 100644 index 0000000..a7bc8fa --- /dev/null +++ b/.claude/homunculus/instincts/inherited/repopilot-instincts.yaml @@ -0,0 +1,298 @@ +# Instincts generated from https://github.com/sreerevanth/repopilot +# Generated: 2026-07-01T06:31:34.491Z +# Version: 2.0 +# NOTE: This file supplements (does not replace) any existing curated instincts. +# High-confidence manually curated instincts should be preserved alongside these. + +--- +id: repopilot-commit-length +trigger: "when writing a commit message" +confidence: 0.6 +domain: git +source: repo-analysis +source_repo: https://github.com/sreerevanth/repopilot +--- + +# Repopilot Commit Length + +## Action + +Write moderate-length commit messages (~53 characters) + +## Evidence + +- Average commit message length: 53 chars +- Based on 2 commits + +--- +id: repopilot-naming-files +trigger: "when creating a new file" +confidence: 0.8 +domain: code-style +source: repo-analysis +source_repo: https://github.com/sreerevanth/repopilot +--- + +# Repopilot Naming Files + +## Action + +Use snake_case naming convention + +## Evidence + +- Analyzed file naming patterns in repository +- Dominant pattern: snake_case + +--- +id: repopilot-import-relative +trigger: "when importing modules" +confidence: 0.75 +domain: code-style +source: repo-analysis +source_repo: https://github.com/sreerevanth/repopilot +--- + +# Repopilot Import Relative + +## Action + +Use relative imports for project files + +## Evidence + +- Import analysis shows relative import pattern +- Example: import { x } from '../lib/x' + +--- +id: repopilot-export-style +trigger: "when exporting from a module" +confidence: 0.7 +domain: code-style +source: repo-analysis +source_repo: https://github.com/sreerevanth/repopilot +--- + +# Repopilot Export Style + +## Action + +Prefer named exports + +## Evidence + +- Export pattern analysis +- Dominant style: named + +--- +id: repopilot-test-separate +trigger: "when writing tests" +confidence: 0.8 +domain: testing +source: repo-analysis +source_repo: https://github.com/sreerevanth/repopilot +--- + +# Repopilot Test Separate + +## Action + +Place tests in the tests/ or __tests__/ directory, mirroring src structure + +## Evidence + +- Separate test directory pattern detected +- Tests live in dedicated test folders + +--- +id: repopilot-instinct-file-naming +trigger: "When creating a new Python file" +confidence: 0.9 +domain: code-style +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct File Naming + +## Action + +Name the file using snake_case + +## Evidence + +- Pattern in namingConventions.files: snake_case + +--- +id: repopilot-instinct-function-naming +trigger: "When defining a new function" +confidence: 0.8 +domain: code-style +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct Function Naming + +## Action + +Name the function using camelCase + +## Evidence + +- Pattern in namingConventions.functions: camelCase + +--- +id: repopilot-instinct-class-naming +trigger: "When defining a new class" +confidence: 0.9 +domain: code-style +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct Class Naming + +## Action + +Name the class using PascalCase + +## Evidence + +- Pattern in namingConventions.classes: PascalCase + +--- +id: repopilot-instinct-constant-naming +trigger: "When defining a constant" +confidence: 0.9 +domain: code-style +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct Constant Naming + +## Action + +Name the constant using SCREAMING_SNAKE_CASE + +## Evidence + +- Pattern in namingConventions.constants: SCREAMING_SNAKE_CASE + +--- +id: repopilot-instinct-import-style +trigger: "When importing modules in Python files" +confidence: 0.8 +domain: code-style +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct Import Style + +## Action + +Use relative import statements + +## Evidence + +- Pattern in importStyle: relative + +--- +id: repopilot-instinct-export-style +trigger: "When exporting functions or classes from a module" +confidence: 0.7 +domain: code-style +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct Export Style + +## Action + +Use named exports + +## Evidence + +- Pattern in exportStyle: named + +--- +id: repopilot-instinct-test-location +trigger: "When adding new tests" +confidence: 0.9 +domain: testing +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct Test Location + +## Action + +Place test files in a separate folder from source code + +## Evidence + +- Pattern in architecture.testLocation: separate + +--- +id: repopilot-instinct-git-commit-prefix +trigger: "When writing a commit message for a new feature" +confidence: 0.9 +domain: git +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct Git Commit Prefix + +## Action + +Prefix the commit message with 'feat:' + +## Evidence + +- Pattern in commits.prefixes: feat +- Seen in commit: 'feat: add automated bug-fixing GitHub Actions workflow and non-interactive CLI support' + +--- +id: repopilot-instinct-git-commit-format +trigger: "When writing a commit message" +confidence: 0.7 +domain: git +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct Git Commit Format + +## Action + +Keep the commit message concise (around 53 characters on average) + +## Evidence + +- Pattern in commits.averageLength: 53 + +--- +id: repopilot-instinct-github-actions-workflow +trigger: "When automating bug-fixing or CI tasks" +confidence: 0.8 +domain: workflow +source: repo-analysis +source_repo: sreerevanth/repopilot +--- + +# Repopilot Instinct Github Actions Workflow + +## Action + +Add or update a GitHub Actions workflow in .github/workflows/agent-fix.yml + +## Evidence + +- Pattern in configFiles: .github/workflows/agent-fix.yml +- Seen in commit: 'feat: add automated bug-fixing GitHub Actions workflow and non-interactive CLI support' +