@ryuenn3123/agentic-senior-core 4.4.0 → 5.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/plugins/agentic-senior-core/plugin.json +3 -0
- package/.agents/plugins/agentic-senior-core/rules/agentic-senior-core.md +131 -0
- package/.agents/plugins/agentic-senior-core/skills/asc/SKILL.md +16 -0
- package/.agents/plugins/agentic-senior-core/skills/asc-audit/SKILL.md +28 -0
- package/.agents/plugins/agentic-senior-core/skills/asc-refactor/SKILL.md +35 -0
- package/.agents/plugins/agentic-senior-core/skills/asc-review/SKILL.md +54 -0
- package/.agents/rules/agentic-senior-core.md +131 -0
- package/.claude-plugin/marketplace.json +17 -0
- package/.claude-plugin/plugin.json +17 -0
- package/.clinerules/agentic-senior-core.md +94 -0
- package/.codex-plugin/plugin.json +24 -0
- package/.cursor/rules/agentic-senior-core.mdc +99 -0
- package/.devin-plugin/plugin.json +13 -0
- package/.github/copilot-instructions.md +94 -0
- package/.github/plugin/marketplace.json +20 -0
- package/.github/plugin/plugin.json +16 -0
- package/.kiro/steering/agentic-senior-core.md +94 -0
- package/.openclaw/skills/asc/SKILL.md +23 -0
- package/.openclaw/skills/asc-audit/SKILL.md +28 -0
- package/.openclaw/skills/asc-review/SKILL.md +54 -0
- package/.opencode/plugins/agentic-senior-core.mjs +31 -0
- package/.windsurf/rules/agentic-senior-core.md +94 -0
- package/AGENTS.md +126 -127
- package/CONTRIBUTING.md +93 -63
- package/README.md +190 -110
- package/__init__.py +61 -0
- package/bin/agentic-senior-core.js +42 -41
- package/commands/asc-audit.md +1 -0
- package/commands/asc-audit.toml +2 -0
- package/commands/asc-help.md +9 -0
- package/commands/asc-help.toml +2 -0
- package/commands/asc-refactor.md +1 -0
- package/commands/asc-refactor.toml +2 -0
- package/commands/asc-review.md +1 -0
- package/commands/asc-review.toml +2 -0
- package/gemini-extension.json +10 -0
- package/hooks/copilot-hooks.json +21 -0
- package/hooks/hooks.json +31 -0
- package/hooks/session-start.js +36 -0
- package/hooks/subagent-start.js +38 -0
- package/lib/cli/commands/adapter.mjs +109 -0
- package/lib/cli/commands/clean.mjs +63 -0
- package/lib/cli/commands/status.mjs +94 -0
- package/package.json +43 -60
- package/plugin.yaml +16 -0
- package/scripts/uninstall.js +38 -0
- package/skills/asc/SKILL.md +16 -0
- package/skills/asc-audit/SKILL.md +28 -0
- package/skills/asc-refactor/SKILL.md +35 -0
- package/skills/asc-review/SKILL.md +54 -0
- package/.agent-context/policies/llm-judge-threshold.json +0 -29
- package/.agent-context/prompts/bootstrap-design.md +0 -63
- package/.agent-context/prompts/compact-natural-mode.md +0 -100
- package/.agent-context/prompts/init-project.md +0 -60
- package/.agent-context/prompts/refactor.md +0 -38
- package/.agent-context/prompts/review-code.md +0 -31
- package/.agent-context/review-checklists/architecture-review.md +0 -57
- package/.agent-context/review-checklists/pr-checklist.md +0 -134
- package/.agent-context/rules/api-docs.md +0 -24
- package/.agent-context/rules/api-versioning.md +0 -16
- package/.agent-context/rules/architecture.md +0 -38
- package/.agent-context/rules/background-jobs.md +0 -17
- package/.agent-context/rules/config-and-flags.md +0 -16
- package/.agent-context/rules/database-design.md +0 -18
- package/.agent-context/rules/docker-runtime.md +0 -17
- package/.agent-context/rules/error-handling.md +0 -16
- package/.agent-context/rules/event-driven.md +0 -16
- package/.agent-context/rules/frontend-architecture.md +0 -54
- package/.agent-context/rules/microservices.md +0 -16
- package/.agent-context/rules/migrations.md +0 -16
- package/.agent-context/rules/observability.md +0 -16
- package/.agent-context/rules/performance.md +0 -16
- package/.agent-context/rules/realtime.md +0 -16
- package/.agent-context/rules/resilience.md +0 -18
- package/.agent-context/rules/security.md +0 -18
- package/.agent-context/rules/testing.md +0 -16
- package/.agent-context/state/README.md +0 -25
- package/.agent-context/state/architecture-map.md +0 -40
- package/.agent-context/state/benchmark-comparison-schema.json +0 -181
- package/.agent-context/state/benchmark-reproducibility.json +0 -87
- package/.agent-context/state/benchmark-thresholds.json +0 -10
- package/.agent-context/state/benchmark-writer-judge-config.json +0 -58
- package/.agent-context/state/dependency-map.md +0 -41
- package/.agent-context/state/memory-adapter-contract.json +0 -52
- package/.agent-context/state/memory-schema-v1.json +0 -88
- package/GEMINI.md +0 -1
- package/benchmarks/README.md +0 -60
- package/benchmarks/compact-natural-mode/fixtures.mjs +0 -359
- package/benchmarks/compact-natural-mode/scorer.mjs +0 -331
- package/benchmarks/runtime-token-saver/fixtures.mjs +0 -836
- package/lib/cli/adaptive-context/catalog.mjs +0 -394
- package/lib/cli/adaptive-context/file-signals.mjs +0 -100
- package/lib/cli/adaptive-context/implications.mjs +0 -44
- package/lib/cli/adaptive-context.mjs +0 -151
- package/lib/cli/audits/typography-palette-anti-repeat/color-utils.mjs +0 -156
- package/lib/cli/audits/typography-palette-anti-repeat/file-scanner.mjs +0 -103
- package/lib/cli/audits/typography-palette-anti-repeat/typography-utils.mjs +0 -70
- package/lib/cli/backup.mjs +0 -210
- package/lib/cli/commands/context.mjs +0 -140
- package/lib/cli/commands/init/project-context.mjs +0 -60
- package/lib/cli/commands/init/runtime-environment.mjs +0 -59
- package/lib/cli/commands/init/setup-decisions.mjs +0 -83
- package/lib/cli/commands/init.mjs +0 -654
- package/lib/cli/commands/launch.mjs +0 -76
- package/lib/cli/commands/optimize.mjs +0 -284
- package/lib/cli/commands/rollback.mjs +0 -64
- package/lib/cli/commands/upgrade/token-optimization-state.mjs +0 -51
- package/lib/cli/commands/upgrade.mjs +0 -451
- package/lib/cli/compiler.mjs +0 -187
- package/lib/cli/constants.mjs +0 -136
- package/lib/cli/detector/constants.mjs +0 -135
- package/lib/cli/detector/design-evidence/collector.mjs +0 -256
- package/lib/cli/detector/design-evidence/constants.mjs +0 -39
- package/lib/cli/detector/design-evidence/file-traversal.mjs +0 -83
- package/lib/cli/detector/design-evidence/structured-attribute-evidence.mjs +0 -117
- package/lib/cli/detector/design-evidence/summary.mjs +0 -109
- package/lib/cli/detector/design-evidence/utility-helpers.mjs +0 -122
- package/lib/cli/detector/design-evidence.mjs +0 -25
- package/lib/cli/detector/stack-detection.mjs +0 -243
- package/lib/cli/detector/ui-signals.mjs +0 -150
- package/lib/cli/detector/workspace-scan.mjs +0 -177
- package/lib/cli/detector.mjs +0 -23
- package/lib/cli/init-detection-flow.mjs +0 -48
- package/lib/cli/init-options.mjs +0 -237
- package/lib/cli/init-selection.mjs +0 -29
- package/lib/cli/memory-continuity.mjs +0 -537
- package/lib/cli/preflight.mjs +0 -76
- package/lib/cli/project-scaffolder/constants.mjs +0 -69
- package/lib/cli/project-scaffolder/discovery.mjs +0 -272
- package/lib/cli/project-scaffolder/prompt-builders.mjs +0 -171
- package/lib/cli/project-scaffolder/storage.mjs +0 -144
- package/lib/cli/project-scaffolder/ui-scope-detection.mjs +0 -36
- package/lib/cli/project-scaffolder.mjs +0 -29
- package/lib/cli/rollback.mjs +0 -66
- package/lib/cli/token-optimization.mjs +0 -401
- package/lib/cli/utils/filesystem.mjs +0 -81
- package/lib/cli/utils/managed-surface.mjs +0 -280
- package/lib/cli/utils/prompting.mjs +0 -44
- package/lib/cli/utils.mjs +0 -479
- package/mcp.json +0 -134
- package/scripts/adaptive-context/fixtures.mjs +0 -183
- package/scripts/adaptive-context-benchmark.mjs +0 -9
- package/scripts/ascx-runtime-token-saver-benchmark.mjs +0 -9
- package/scripts/benchmark-evidence-bundle.mjs +0 -645
- package/scripts/benchmark-gate.mjs +0 -121
- package/scripts/benchmark-intelligence.mjs +0 -33
- package/scripts/benchmark-writer-judge-matrix.mjs +0 -379
- package/scripts/build-release-benchmark-bundle.mjs +0 -202
- package/scripts/bump-version.mjs +0 -103
- package/scripts/clean-local-artifacts.mjs +0 -78
- package/scripts/compact-natural-mode-benchmark.mjs +0 -9
- package/scripts/context-triggered-audit.mjs +0 -391
- package/scripts/detection-benchmark.mjs +0 -127
- package/scripts/docs-quality-drift-report.mjs +0 -358
- package/scripts/documentation-boundary-audit.mjs +0 -305
- package/scripts/explain-on-demand-audit.mjs +0 -427
- package/scripts/forbidden-content-check.mjs +0 -123
- package/scripts/frontend-usability-audit.mjs +0 -243
- package/scripts/generate-sbom.mjs +0 -61
- package/scripts/governance-weekly-report.mjs +0 -466
- package/scripts/llm-judge/checklist-loader.mjs +0 -45
- package/scripts/llm-judge/constants.mjs +0 -66
- package/scripts/llm-judge/diff-collection.mjs +0 -74
- package/scripts/llm-judge/prompting.mjs +0 -78
- package/scripts/llm-judge/providers.mjs +0 -111
- package/scripts/llm-judge/verdict.mjs +0 -134
- package/scripts/llm-judge.mjs +0 -200
- package/scripts/memory-continuity-benchmark.mjs +0 -322
- package/scripts/quality-trend-report.mjs +0 -289
- package/scripts/release-gate/audit-checks.mjs +0 -441
- package/scripts/release-gate/constants.mjs +0 -53
- package/scripts/release-gate/runtime.mjs +0 -63
- package/scripts/release-gate/static-checks.mjs +0 -182
- package/scripts/release-gate.mjs +0 -42
- package/scripts/rules-guardian-audit.mjs +0 -580
- package/scripts/single-source-lazy-loading-audit.mjs +0 -449
- package/scripts/sync-thin-adapters.mjs +0 -72
- package/scripts/token-optimization-benchmark.mjs +0 -252
- package/scripts/ui-design-judge/constants.mjs +0 -13
- package/scripts/ui-design-judge/design-execution-summary.mjs +0 -81
- package/scripts/ui-design-judge/git-input.mjs +0 -134
- package/scripts/ui-design-judge/prompting.mjs +0 -52
- package/scripts/ui-design-judge/providers.mjs +0 -102
- package/scripts/ui-design-judge/reporting.mjs +0 -183
- package/scripts/ui-design-judge/rubric-calibration.mjs +0 -214
- package/scripts/ui-design-judge/rubric-goldset.json +0 -188
- package/scripts/ui-design-judge.mjs +0 -319
- package/scripts/ui-rubric-calibration.mjs +0 -35
- package/scripts/validate/audits/cache-layer-contract.mjs +0 -230
- package/scripts/validate/audits/caching-scope-hygiene.mjs +0 -235
- package/scripts/validate/audits/file-size.mjs +0 -158
- package/scripts/validate/audits/reflection-citations.mjs +0 -130
- package/scripts/validate/audits/release-bundle.mjs +0 -135
- package/scripts/validate/audits/rule-id-uniqueness.mjs +0 -278
- package/scripts/validate/config.mjs +0 -501
- package/scripts/validate/coverage-checks.mjs +0 -446
- package/scripts/validate/file-structure.mjs +0 -158
- package/scripts/validate/markdown-content.mjs +0 -109
- package/scripts/validate/project-metadata.mjs +0 -166
- package/scripts/validate/utils.mjs +0 -52
- package/scripts/validate.mjs +0 -267
package/AGENTS.md
CHANGED
|
@@ -1,127 +1,126 @@
|
|
|
1
|
-
# Agentic
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
Use
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
- Never touch `.agentic-backup/`. Update `package-lock.json` via `ascx npm install`. Regenerate benchmarks via scripts.
|
|
1
|
+
# Agentic Senior Core
|
|
2
|
+
|
|
3
|
+
You write code like a staff engineer. Efficient, safe, maintainable.
|
|
4
|
+
The best code is the code never written. Write only what the task needs.
|
|
5
|
+
|
|
6
|
+
Before writing any code, stop at the first step that holds:
|
|
7
|
+
|
|
8
|
+
1. Does this need to be built at all?
|
|
9
|
+
2. Does the codebase already have this? Reuse it.
|
|
10
|
+
3. Does the standard library or a native platform feature cover it? Use it.
|
|
11
|
+
4. Does an already-installed dependency solve it? Use it.
|
|
12
|
+
5. Can this be one straightforward function? Write it.
|
|
13
|
+
6. Only then: write the minimum code that works.
|
|
14
|
+
|
|
15
|
+
## Code Quality
|
|
16
|
+
|
|
17
|
+
- Descriptive variable and function names. No cryptic abbreviations.
|
|
18
|
+
- Early returns over deep nesting. Keep the main flow traceable.
|
|
19
|
+
- No clever hacks, code golfing, deeply nested ternaries, or tricky functional chains.
|
|
20
|
+
- No premature abstraction. Direct procedural flow over helper chains when no real duplication exists.
|
|
21
|
+
- Delete code that carries no behavior, safety, or test value.
|
|
22
|
+
- Plain English in documentation. No emoji in formal docs or review summaries.
|
|
23
|
+
|
|
24
|
+
## Architecture
|
|
25
|
+
|
|
26
|
+
- Explicit module boundaries. Group by feature or domain.
|
|
27
|
+
- No custom crypto, state management, or routing when standard libraries exist.
|
|
28
|
+
- Controllers handle protocol translation only. Business logic belongs in services.
|
|
29
|
+
- Default to modular monolith unless scale evidence demands microservices.
|
|
30
|
+
- Direction changes require explicit user confirmation.
|
|
31
|
+
- Do not choose framework by habit. Match project evidence and needs.
|
|
32
|
+
|
|
33
|
+
## Security (never skip)
|
|
34
|
+
|
|
35
|
+
- Validate and normalize ALL inputs at trust boundaries: body, query, params, headers, cookies, uploads, webhooks, job payloads.
|
|
36
|
+
- Parameterize all queries. Never interpolate input into SQL or shell commands.
|
|
37
|
+
- Hash passwords with Argon2 or bcrypt. Never store plaintext or use MD5/SHA for passwords.
|
|
38
|
+
- Never commit secrets, tokens, or credentials. Inject via environment variables.
|
|
39
|
+
- Enforce resource-level authorization, not just authentication.
|
|
40
|
+
- Error responses and logs must not leak stack traces, internals, or PII.
|
|
41
|
+
- Rate limit public endpoints. Least privilege for all service accounts.
|
|
42
|
+
- Encode output for user-controlled content to prevent XSS.
|
|
43
|
+
|
|
44
|
+
## Error Handling
|
|
45
|
+
|
|
46
|
+
- Fail fast on invalid input.
|
|
47
|
+
- Structured error responses with safe details only. Use standard error codes (RFC 9457 when applicable).
|
|
48
|
+
- Distinguish client errors (4xx) from server errors (5xx).
|
|
49
|
+
- No silent swallowing. Log operational errors with context.
|
|
50
|
+
|
|
51
|
+
## Testing
|
|
52
|
+
|
|
53
|
+
- Write tests for business logic and boundary failures, not implementation details.
|
|
54
|
+
- Cover happy path, error paths, edge cases, and empty states.
|
|
55
|
+
- Tests must be fast, isolated, deterministic.
|
|
56
|
+
- Integration tests for critical data paths.
|
|
57
|
+
- Sensitive mutations need idempotency or duplicate-submit coverage.
|
|
58
|
+
- CI pipelines block on test failures.
|
|
59
|
+
|
|
60
|
+
## API Design
|
|
61
|
+
|
|
62
|
+
- Consistent resource naming and HTTP semantics.
|
|
63
|
+
- Bounded list reads: always paginate or set explicit limits.
|
|
64
|
+
- Idempotent for side-effect mutations. Document retry behavior.
|
|
65
|
+
- Backward-compatible by default. Version breaking changes explicitly.
|
|
66
|
+
- Sync docs in the same commit when changing API, CLI, or schema.
|
|
67
|
+
- Use OpenAPI 3.1 for HTTP APIs where applicable.
|
|
68
|
+
- Document deprecation windows before sunsetting endpoints.
|
|
69
|
+
|
|
70
|
+
## Database
|
|
71
|
+
|
|
72
|
+
- Avoid N+1 queries. Use eager loading or batching.
|
|
73
|
+
- Paginate all growable datasets. No unbounded queries.
|
|
74
|
+
- Multi-table mutations run inside transactions.
|
|
75
|
+
- Monetary amounts: integer minor units or exact decimal. Never floats.
|
|
76
|
+
- Timestamps in UTC. No naive timestamps.
|
|
77
|
+
- Use optimistic concurrency tokens for shared mutable resources.
|
|
78
|
+
- Schema changes require versioned, reversible migrations.
|
|
79
|
+
- Never modify merged migrations. Create new ones.
|
|
80
|
+
- Use concurrent index builds in production.
|
|
81
|
+
|
|
82
|
+
## Frontend
|
|
83
|
+
|
|
84
|
+
- Semantic HTML before custom components.
|
|
85
|
+
- WCAG 2.2 AA is the accessibility floor: focus visibility, target size, keyboard access, no color-only meaning.
|
|
86
|
+
- Responsive by default. Recompose content for breakpoints, not just shrink.
|
|
87
|
+
- Explicitly handle empty, loading, error, and offline states.
|
|
88
|
+
- CSS logical properties for direction-sensitive layout.
|
|
89
|
+
- Plan overflow, wrapping, truncation, and motion fallbacks.
|
|
90
|
+
- No placeholder, lorem, or TODO content in production UI.
|
|
91
|
+
- Use component kits or headless primitives for behavior and accessibility when they fit.
|
|
92
|
+
|
|
93
|
+
## Infrastructure
|
|
94
|
+
|
|
95
|
+
- Container configs: multi-stage builds, minimal base images, non-root users, no baked secrets.
|
|
96
|
+
- Explicit healthchecks in production.
|
|
97
|
+
- Configuration from environment, validated at startup. Fail fast if invalid.
|
|
98
|
+
- Feature flags for incremental rollouts.
|
|
99
|
+
- Structured logging with correlation IDs. No PII in logs.
|
|
100
|
+
- Measure latency, traffic, errors, saturation.
|
|
101
|
+
|
|
102
|
+
## Resilience
|
|
103
|
+
|
|
104
|
+
- Every outbound network call has a strict timeout.
|
|
105
|
+
- Retries use exponential backoff with jitter and max attempt limits.
|
|
106
|
+
- Only retry idempotent operations.
|
|
107
|
+
- Circuit breakers for unhealthy dependencies.
|
|
108
|
+
- Graceful degradation on non-critical dependency failures.
|
|
109
|
+
- Cross-service calls must have timeouts and retries. Independent services own their data.
|
|
110
|
+
|
|
111
|
+
## Async and Events
|
|
112
|
+
|
|
113
|
+
- Events are immutable. Consumers are idempotent.
|
|
114
|
+
- Dead-letter queues for failed or poison messages.
|
|
115
|
+
- Handle out-of-order events.
|
|
116
|
+
- Background jobs: offload heavy processing (>500ms) to queues. Jobs have timeouts and retry limits.
|
|
117
|
+
- SSE for one-way server-to-client. WebSockets only for true bidirectional.
|
|
118
|
+
- Realtime connections degrade gracefully to polling.
|
|
119
|
+
|
|
120
|
+
## Response Style
|
|
121
|
+
|
|
122
|
+
Write the smallest complete answer that lets the developer act correctly.
|
|
123
|
+
|
|
124
|
+
Always remove: greetings, affirmations, narration about what you are about to do, padding paragraphs, generic closing offers.
|
|
125
|
+
|
|
126
|
+
Always preserve: exact commands, file paths, line numbers, error messages, exit codes, validation status, assumptions, blockers, risks, and next actions.
|
package/CONTRIBUTING.md
CHANGED
|
@@ -1,93 +1,122 @@
|
|
|
1
1
|
# Contributing to Agentic-Senior-Core
|
|
2
2
|
|
|
3
|
-
Thanks for wanting to make AI agents write better code.
|
|
3
|
+
Thanks for wanting to make AI agents write better code.
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
## What You Can Contribute
|
|
8
8
|
|
|
9
|
-
| Type | Where |
|
|
10
|
-
|
|
11
|
-
|
|
|
12
|
-
|
|
|
13
|
-
|
|
|
14
|
-
| New
|
|
15
|
-
| State intelligence update | `.agent-context/state/` | Architecture boundaries and dependency map |
|
|
16
|
-
| MCP workflow update | `mcp.json` | Self-healing automation flow |
|
|
9
|
+
| Type | Where | Notes |
|
|
10
|
+
|------|-------|-------|
|
|
11
|
+
| Rule improvement | `AGENTS.md` | All rules live in one file |
|
|
12
|
+
| New skill | `skills/<name>/SKILL.md` | Long-form workflow guidance |
|
|
13
|
+
| New command | `commands/<name>.md` + `.toml` | Claude `.md`, Gemini `.toml` |
|
|
14
|
+
| New host adapter | See adapter guide below | One file per host |
|
|
17
15
|
| Bug fix | Any file | Typos, broken links, incorrect rules |
|
|
18
|
-
| Improvement | Any file | Sharper wording, stricter boundaries |
|
|
19
16
|
|
|
20
17
|
---
|
|
21
18
|
|
|
22
19
|
## Content Quality Standard
|
|
23
20
|
|
|
24
|
-
|
|
21
|
+
Every rule must be opinionated, specific, and enforceable.
|
|
25
22
|
|
|
26
|
-
|
|
23
|
+
### Litmus Test
|
|
27
24
|
|
|
28
|
-
### The Litmus Test
|
|
29
25
|
- Does your rule include concrete BANNED / REQUIRED boundaries?
|
|
30
|
-
- Would an AI agent
|
|
26
|
+
- Would an AI agent enforce it without ambiguity?
|
|
31
27
|
- Does it teach the reader WHY, not just WHAT?
|
|
32
28
|
|
|
33
29
|
If all three are "yes", it belongs here.
|
|
34
30
|
|
|
35
31
|
---
|
|
36
32
|
|
|
37
|
-
## How to
|
|
33
|
+
## How to Edit Rules
|
|
38
34
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
35
|
+
All universal rules live in `AGENTS.md`. This is the single source of truth injected into every host via hooks.
|
|
36
|
+
|
|
37
|
+
1. Edit `AGENTS.md`
|
|
38
|
+
2. Run `npm test` to verify structure and size constraints
|
|
39
|
+
3. Open a PR
|
|
40
|
+
|
|
41
|
+
Keep `AGENTS.md` under 8KB (~1,200 tokens). Every byte is injected on every session start across all hosts. Concise rules with high signal-to-noise ratio.
|
|
44
42
|
|
|
45
43
|
---
|
|
46
44
|
|
|
47
|
-
## How to Add
|
|
45
|
+
## How to Add a Skill
|
|
46
|
+
|
|
47
|
+
Skills are long-form workflows that users invoke on demand (not always-on). They don't count against the always-on token budget.
|
|
48
48
|
|
|
49
|
-
1.
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
49
|
+
1. Create `skills/<name>/SKILL.md` with frontmatter:
|
|
50
|
+
```yaml
|
|
51
|
+
---
|
|
52
|
+
name: asc-<name>
|
|
53
|
+
description: One-line description
|
|
54
|
+
---
|
|
55
|
+
```
|
|
56
|
+
2. Create matching command files:
|
|
57
|
+
- `commands/<name>.md` (Claude Code format)
|
|
58
|
+
- `commands/<name>.toml` (Gemini format: `description` + `prompt` fields)
|
|
59
|
+
3. If the skill should be available in OpenClaw, copy `SKILL.md` to `.openclaw/skills/<name>/SKILL.md`
|
|
60
|
+
4. Run `npm test`
|
|
61
|
+
5. Open a PR
|
|
54
62
|
|
|
55
63
|
---
|
|
56
64
|
|
|
57
|
-
## How to Add a
|
|
65
|
+
## How to Add a Host Adapter
|
|
66
|
+
|
|
67
|
+
### Plugin-tier hosts (hooks + skills + commands)
|
|
68
|
+
|
|
69
|
+
These hosts support full plugin systems. Create the host's manifest in its standard directory:
|
|
70
|
+
|
|
71
|
+
| Host | Manifest path | Format |
|
|
72
|
+
|------|--------------|--------|
|
|
73
|
+
| Claude Code | `.claude-plugin/plugin.json` | JSON: name, version, skills, commands, hooks |
|
|
74
|
+
| Codex CLI | `.codex-plugin/plugin.json` | JSON: name, skills, hooks, interface |
|
|
75
|
+
| Copilot CLI | `.github/plugin/plugin.json` | JSON |
|
|
76
|
+
| Devin | `.devin-plugin/plugin.json` | JSON minimal |
|
|
77
|
+
| Hermes | `plugin.yaml` + `__init__.py` | YAML + Python |
|
|
78
|
+
| OpenCode | `.opencode/plugins/agentic-senior-core.mjs` | JS module |
|
|
79
|
+
|
|
80
|
+
### Instruction-tier hosts (single file copy)
|
|
81
|
+
|
|
82
|
+
These hosts read a rules file from a standard path. The adapter file contains the full `AGENTS.md` content with host-specific frontmatter.
|
|
83
|
+
|
|
84
|
+
| Host | Adapter path |
|
|
85
|
+
|------|-------------|
|
|
86
|
+
| Cursor | `.cursor/rules/agentic-senior-core.mdc` |
|
|
87
|
+
| Windsurf | `.windsurf/rules/agentic-senior-core.md` |
|
|
88
|
+
| Cline | `.clinerules/agentic-senior-core.md` |
|
|
89
|
+
| Copilot (VS Code) | `.github/copilot-instructions.md` |
|
|
90
|
+
| Kiro | `.kiro/steering/agentic-senior-core.md` |
|
|
58
91
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
92
|
+
After adding a new adapter:
|
|
93
|
+
1. Add the file path to `package.json` `files` array
|
|
94
|
+
2. Add the adapter to `lib/cli/commands/adapter.mjs` if it's instruction-tier
|
|
95
|
+
3. Add a test assertion in `tests/adapter.test.mjs`
|
|
96
|
+
4. Update `README.md` supported hosts table
|
|
97
|
+
|
|
98
|
+
### Keeping adapter content aligned
|
|
99
|
+
|
|
100
|
+
All instruction-tier adapter files must contain the same rule content as `AGENTS.md`. When you update `AGENTS.md`, update all adapter files. The test suite validates that all adapter files exist.
|
|
68
101
|
|
|
69
102
|
---
|
|
70
103
|
|
|
71
104
|
## PR Process
|
|
72
105
|
|
|
73
106
|
1. **Fork** the repository
|
|
74
|
-
2. **Branch** from `main`: `feat/add-
|
|
75
|
-
3. **Write** your content following the quality standard
|
|
76
|
-
4. **
|
|
77
|
-
5. **Commit** with Conventional Commits: `feat(
|
|
78
|
-
6. **Open PR** with
|
|
79
|
-
- What you added/changed
|
|
80
|
-
- Why it matters
|
|
81
|
-
- Which manifest files you updated
|
|
107
|
+
2. **Branch** from `main`: `feat/add-hermes-adapter` or `fix/security-rule-typo`
|
|
108
|
+
3. **Write** your content following the quality standard
|
|
109
|
+
4. **Test**: `npm test` must pass
|
|
110
|
+
5. **Commit** with Conventional Commits: `feat(adapters): add hermes plugin`
|
|
111
|
+
6. **Open PR** with what you changed and why
|
|
82
112
|
|
|
83
113
|
---
|
|
84
114
|
|
|
85
115
|
## What We Don't Accept
|
|
86
116
|
|
|
87
|
-
- Generic content that reads like
|
|
117
|
+
- Generic content that reads like auto-generated filler
|
|
88
118
|
- Rules without concrete enforcement boundaries
|
|
89
|
-
-
|
|
90
|
-
- PRs that don't update the relevant source files, docs, validators, and checklists
|
|
119
|
+
- PRs that don't update tests for structural changes
|
|
91
120
|
|
|
92
121
|
---
|
|
93
122
|
|
|
@@ -95,30 +124,31 @@ If all three are "yes", it belongs here.
|
|
|
95
124
|
|
|
96
125
|
The npm package is published under `@ryuenn3123`, while the GitHub repository is hosted under `fatidaprilian`.
|
|
97
126
|
|
|
98
|
-
### Architecture
|
|
127
|
+
### Architecture (v5.x)
|
|
99
128
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
-
|
|
103
|
-
|
|
129
|
+
```
|
|
130
|
+
AGENTS.md <-- single source of truth for rules
|
|
131
|
+
hooks/session-start.js <-- injects AGENTS.md on session start (CommonJS)
|
|
132
|
+
hooks/subagent-start.js <-- injects AGENTS.md into subagents (CommonJS)
|
|
133
|
+
skills/*/SKILL.md <-- on-demand workflow guidance
|
|
134
|
+
commands/*.md <-- Claude Code commands
|
|
135
|
+
commands/*.toml <-- Gemini CLI commands
|
|
136
|
+
.claude-plugin/ <-- Claude Code plugin manifest
|
|
137
|
+
.codex-plugin/ <-- Codex CLI plugin manifest
|
|
138
|
+
.cursor/rules/ <-- Cursor adapter (instruction-tier)
|
|
139
|
+
.windsurf/rules/ <-- Windsurf adapter
|
|
140
|
+
lib/cli/commands/adapter.mjs <-- CLI adapter generator
|
|
141
|
+
tests/adapter.test.mjs <-- structure validation tests
|
|
142
|
+
```
|
|
104
143
|
|
|
105
144
|
```bash
|
|
106
|
-
# Clone
|
|
107
145
|
git clone https://github.com/fatidaprilian/Agentic-Senior-Core.git
|
|
108
146
|
cd Agentic-Senior-Core
|
|
109
|
-
|
|
110
|
-
# Validate
|
|
111
|
-
npm run validate
|
|
112
|
-
|
|
113
|
-
# Clean ignored local reports/backups when the workspace gets noisy
|
|
114
|
-
npm run clean:local
|
|
115
|
-
|
|
116
|
-
# Test interactive CLI
|
|
117
|
-
node ./bin/agentic-senior-core.js init /tmp/test-project
|
|
147
|
+
npm test
|
|
118
148
|
```
|
|
119
149
|
|
|
120
150
|
---
|
|
121
151
|
|
|
122
152
|
## Questions?
|
|
123
153
|
|
|
124
|
-
Open an issue. Describe what you want to add and why.
|
|
154
|
+
Open an issue. Describe what you want to add and why.
|