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
79 changes: 79 additions & 0 deletions .agents/skills/node-ts-api-gateway/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
```markdown
# node-ts-api-gateway Development Patterns

> Auto-generated skill from repository analysis

## Overview
This skill teaches you the core development patterns used in the `node-ts-api-gateway` TypeScript project. You'll learn about file naming conventions, import/export styles, commit message formatting, and how to write and run tests. This guide is ideal for contributors looking to maintain consistency and quality in the codebase.

## Coding Conventions

### File Naming
- **PascalCase** is used for file names.
- Example: `ApiGateway.ts`, `UserController.ts`

### Import Style
- **Relative imports** are preferred.
- Example:
```typescript
import { UserService } from './UserService';
```

### Export Style
- **Named exports** are used throughout the codebase.
- Example:
```typescript
export function handleRequest() { /* ... */ }
export const API_VERSION = 'v1';
```

### Commit Messages
- **Conventional commit style** is used.
- Prefixes like `docs` are common.
- Example:
```
docs: update API usage documentation
```

## Workflows

### Code Contribution
**Trigger:** When adding new features or fixing bugs
**Command:** `/contribute`

1. Create a new branch for your work.
2. Follow the coding conventions for file naming, imports, and exports.
3. Write or update tests in files matching `*.test.*`.
4. Use conventional commit messages (e.g., `docs: update README`).
5. Submit a pull request for review.

### Documentation Update
**Trigger:** When updating or adding documentation
**Command:** `/update-docs`

1. Edit the relevant documentation files.
2. Use a commit message starting with `docs:`.
3. Push your changes and open a pull request.

## Testing Patterns

- Test files follow the pattern: `*.test.*` (e.g., `ApiGateway.test.ts`).
- The specific testing framework is **unknown**, but tests should be colocated with or near the code they test.
- Example test file:
```typescript
// ApiGateway.test.ts
import { handleRequest } from './ApiGateway';

describe('handleRequest', () => {
it('should return a valid response', () => {
// test implementation
});
});
```

## Commands
| Command | Purpose |
|-----------------|-------------------------------------------|
| /contribute | Steps for contributing code |
| /update-docs | Steps for updating documentation |
```
6 changes: 6 additions & 0 deletions .agents/skills/node-ts-api-gateway/agents/openai.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
interface:
display_name: "Node Ts Api Gateway"
short_description: "Repo-specific patterns and workflows for node-ts-api-gateway"
default_prompt: "Use the node-ts-api-gateway repo skill to follow existing architecture, testing, and workflow conventions."
policy:
allow_implicit_invocation: true
227 changes: 227 additions & 0 deletions .claude/ecc-tools.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,227 @@
{
"version": "1.3",
"schemaVersion": "1.0",
"generatedBy": "ecc-tools",
"generatedAt": "2026-07-07T17:10:35.692Z",
"repo": "https://github.com/donny-devops/node-ts-api-gateway",
"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": "core",
"recommended": "core",
"effective": "core",
"requestedAlias": "core",
"recommendedAlias": "core",
"effectiveAlias": "core"
},
"requestedProfile": "core",
"profile": "core",
"recommendedProfile": "core",
"effectiveProfile": "core",
"tier": "free",
"requestedComponents": [
"repo-baseline"
],
"selectedComponents": [
"repo-baseline"
],
"requestedAddComponents": [],
"requestedRemoveComponents": [],
"blockedRemovalComponents": [],
"tierFilteredComponents": [],
"requestedRootPackages": [
"runtime-core"
],
"selectedRootPackages": [
"runtime-core"
],
"requestedPackages": [
"runtime-core"
],
"requestedAddPackages": [],
"requestedRemovePackages": [],
"selectedPackages": [
"runtime-core"
],
"packages": [
"runtime-core"
],
"blockedRemovalPackages": [],
"tierFilteredRootPackages": [],
"tierFilteredPackages": [],
"conflictingPackages": [],
"dependencyGraph": {
"runtime-core": []
},
"resolutionOrder": [
"runtime-core"
],
"requestedModules": [
"runtime-core"
],
"selectedModules": [
"runtime-core"
],
"modules": [
"runtime-core"
],
"managedFiles": [
".claude/skills/node-ts-api-gateway/SKILL.md",
".agents/skills/node-ts-api-gateway/SKILL.md",
".agents/skills/node-ts-api-gateway/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/node-ts-api-gateway-instincts.yaml"
],
"packageFiles": {
"runtime-core": [
".claude/skills/node-ts-api-gateway/SKILL.md",
".agents/skills/node-ts-api-gateway/SKILL.md",
".agents/skills/node-ts-api-gateway/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/node-ts-api-gateway-instincts.yaml"
]
},
"moduleFiles": {
"runtime-core": [
".claude/skills/node-ts-api-gateway/SKILL.md",
".agents/skills/node-ts-api-gateway/SKILL.md",
".agents/skills/node-ts-api-gateway/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/node-ts-api-gateway-instincts.yaml"
]
},
"files": [
{
"moduleId": "runtime-core",
"path": ".claude/skills/node-ts-api-gateway/SKILL.md",
"description": "Repository-specific Claude Code skill generated from git history."
},
{
"moduleId": "runtime-core",
"path": ".agents/skills/node-ts-api-gateway/SKILL.md",
"description": "Codex-facing copy of the generated repository skill."
},
{
"moduleId": "runtime-core",
"path": ".agents/skills/node-ts-api-gateway/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/node-ts-api-gateway-instincts.yaml",
"description": "Continuous-learning instincts derived from repository patterns."
}
],
"workflows": [],
"adapters": {
"claudeCode": {
"skillPath": ".claude/skills/node-ts-api-gateway/SKILL.md",
"identityPath": ".claude/identity.json",
"commandPaths": []
},
"codex": {
"configPath": ".codex/config.toml",
"agentsGuidePath": ".codex/AGENTS.md",
"skillPath": ".agents/skills/node-ts-api-gateway/SKILL.md"
}
}
}
Loading
Loading