Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 91 additions & 0 deletions .agents/skills/GraphRAG/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
```markdown
# GraphRAG Development Patterns

> Auto-generated skill from repository analysis

## Overview
This skill teaches the core development patterns and conventions used in the GraphRAG Python codebase. You'll learn how to structure files, write imports and exports, follow commit conventions, and understand the project's approach to testing. This guide is designed to help you quickly become productive and consistent when contributing to GraphRAG.

## Coding Conventions

### File Naming
- Use **snake_case** for all file and module names.
- Example: `graph_utils.py`, `data_loader.py`

### Import Style
- Prefer **relative imports** within the package.
- Example:
```python
from .utils import process_data
from ..models import GraphNode
```

### Export Style
- Use **named exports** (explicitly list exported functions, classes, etc.).
- Example:
```python
__all__ = ["GraphBuilder", "parse_graph"]
```

### Commit Messages
- Follow **conventional commit** format.
- Use the `feat` prefix for new features.
- Example:
```
feat: add support for multi-edge graphs
```

## Workflows

### Adding a New Feature
**Trigger:** When implementing a new capability or module
**Command:** `/add-feature`

1. Create a new Python file using snake_case naming.
2. Use relative imports to reference internal modules.
3. Implement your feature, exporting key classes/functions via `__all__`.
4. Write or update relevant tests (see Testing Patterns).
5. Commit using the conventional format:
```
feat: short description of the feature
```
6. Push your branch and open a pull request.

### Refactoring Code
**Trigger:** When improving code structure or readability
**Command:** `/refactor`

1. Identify the code to refactor.
2. Apply changes, ensuring file naming and import conventions are maintained.
3. Update `__all__` exports if necessary.
4. Run all relevant tests.
5. Commit with a descriptive message (e.g., `refactor: improve graph traversal logic`).
6. Push changes and open a pull request.

### Writing Tests
**Trigger:** When adding or updating tests
**Command:** `/write-test`

1. Create or update test files (see Testing Patterns).
2. Ensure tests cover new or changed functionality.
3. Run tests locally to verify correctness.
4. Commit with a message like `test: add tests for graph merging`.

## Testing Patterns

- Test files follow the `*.test.ts` pattern (TypeScript), though the main codebase is Python.
- The specific testing framework is **unknown**; check existing test files for patterns.
- Place test files alongside the code they test, or in a dedicated `tests/` directory if present.

Example test file name:
```
graph_builder.test.ts
```

## Commands
| Command | Purpose |
|----------------|-------------------------------------------|
| /add-feature | Start the workflow for adding a new feature|
| /refactor | Begin a code refactoring workflow |
| /write-test | Guide for writing or updating tests |
```
6 changes: 6 additions & 0 deletions .agents/skills/GraphRAG/agents/openai.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
interface:
display_name: "GraphRAG"
short_description: "Repo-specific patterns and workflows for GraphRAG"
default_prompt: "Use the GraphRAG repo skill to follow existing architecture, testing, and workflow conventions."
policy:
allow_implicit_invocation: true
272 changes: 272 additions & 0 deletions .claude/ecc-tools.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,272 @@
{
"version": "1.3",
"schemaVersion": "1.0",
"generatedBy": "ecc-tools",
"generatedAt": "2026-07-28T14:21:21.262Z",
"repo": "https://github.com/Rookiecoder-jsjs/GraphRAG",
"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/GraphRAG/SKILL.md",
".agents/skills/GraphRAG/SKILL.md",
".agents/skills/GraphRAG/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/GraphRAG-instincts.yaml"
],
"packageFiles": {
"runtime-core": [
".claude/skills/GraphRAG/SKILL.md",
".agents/skills/GraphRAG/SKILL.md",
".agents/skills/GraphRAG/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/GraphRAG-instincts.yaml"
]
},
"moduleFiles": {
"runtime-core": [
".claude/skills/GraphRAG/SKILL.md",
".agents/skills/GraphRAG/SKILL.md",
".agents/skills/GraphRAG/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/GraphRAG-instincts.yaml"
]
},
"files": [
{
"moduleId": "runtime-core",
"path": ".claude/skills/GraphRAG/SKILL.md",
"description": "Repository-specific Claude Code skill generated from git history."
},
{
"moduleId": "runtime-core",
"path": ".agents/skills/GraphRAG/SKILL.md",
"description": "Codex-facing copy of the generated repository skill."
},
{
"moduleId": "runtime-core",
"path": ".agents/skills/GraphRAG/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/GraphRAG-instincts.yaml",
"description": "Continuous-learning instincts derived from repository patterns."
}
],
"workflows": [],
"adapters": {
"claudeCode": {
"skillPath": ".claude/skills/GraphRAG/SKILL.md",
"identityPath": ".claude/identity.json",
"commandPaths": []
},
"codex": {
"configPath": ".codex/config.toml",
"agentsGuidePath": ".codex/AGENTS.md",
"skillPath": ".agents/skills/GraphRAG/SKILL.md"
}
}
}
Loading