Skip to content

feat: PromptScript integration - single source of truth for 10+ AI assistants#756

Closed
mrwogu wants to merge 1 commit intoaffaan-m:mainfrom
mrwogu:feat/promptscript-integration
Closed

feat: PromptScript integration - single source of truth for 10+ AI assistants#756
mrwogu wants to merge 1 commit intoaffaan-m:mainfrom
mrwogu:feat/promptscript-integration

Conversation

@mrwogu
Copy link
Copy Markdown

@mrwogu mrwogu commented Mar 22, 2026

Summary

This PR adds PromptScript integration to ECC, enabling single-source compilation of AI instructions to 10+ native formats simultaneously.

7 source files (1,992 lines) → 300+ compiled output files across Claude Code, GitHub Copilot, Cursor, Factory AI, OpenCode, Windsurf, Codex, Gemini CLI, and Antigravity.

What's included

File Content
promptscript.yaml Configuration with 10 targets, overwrite: false safety
.promptscript/project.prs Entry point: identity, core principles, full 28-agent table, success metrics
.promptscript/context.prs Architecture, dev workflow, contributing guide, test commands
.promptscript/standards.prs Coding style, testing (TDD + 80% coverage), git conventions
.promptscript/restrictions.prs Security rules, code quality gates
.promptscript/commands.prs 8 slash commands with full content and examples
.promptscript/agents.prs 8 core agents with complete instructions and code examples

How it works

# Install PromptScript CLI
npm i -g promptscript

# Preview what would be generated (dry-run)
prs compile --dry-run

# Compile to all 10 targets
prs compile

# Validate syntax
prs validate --strict

One prs compile generates:

  • CLAUDE.md + .claude/agents/ + .claude/commands/ + .claude/skills/
  • .github/copilot-instructions.md + .github/agents/ + .github/prompts/ + .github/skills/
  • .cursor/rules/project.mdc + .cursor/commands/
  • AGENTS.md + .factory/droids/ + .factory/commands/ + .factory/skills/
  • OPENCODE.md + .opencode/agents/ + .opencode/skills/
  • GEMINI.md + .gemini/commands/ + .gemini/skills/
  • .windsurf/rules/project.md
  • .agent/rules/project.md (Antigravity)

Safety: output.overwrite: false prevents overwriting existing files. Use --dry-run to preview.

Fidelity validation

Compiled outputs were systematically compared against original ECC files:

Category Fidelity Details
Agents (8 defined) 92% Full content with code examples, worked examples, checklists
Commands (8 defined) 86% Complete instructions with tables, recovery strategies, examples
CLAUDE.md 89% Architecture, running tests, dev workflow, key commands
AGENTS.md 97% Core principles, full 28-agent table, success metrics
Overall weighted ~91% Remaining gaps: code fence formatting, some extended examples

Why PromptScript for ECC?

ECC already supports multiple AI tools (Claude Code, Cursor, OpenCode). Currently each format is maintained separately. PromptScript provides:

  1. Single source of truth — Edit once in .prs, compile everywhere
  2. 28 existing skills auto-discovered — Skills in skills/*/SKILL.md are automatically included in all targets
  3. Consistency — Same agent definitions, commands, and rules across all 10+ targets
  4. Validationprs validate --strict catches syntax issues before they reach users
  5. Extensibility — Adding a new AI tool target is one line in promptscript.yaml

What this PR does NOT do

  • Does not modify existing files (CLAUDE.md, AGENTS.md, agents/, commands/, etc.)
  • Does not require PromptScript as a dependency (compilation is optional)
  • Does not change existing workflows — this is purely additive
  • output.overwrite: false ensures existing files are never silently overwritten

Note: 8 of 28 agents defined

Only the 8 core agents are defined in agents.prs with full content. The remaining 20 (language-specific reviewers, resolvers, etc.) exist as standalone files in agents/. The @knowledge block in project.prs documents all 28 for reference. PromptScript auto-discovers skills from skills/*/SKILL.md — agent directory auto-discovery is on the PromptScript roadmap.

Test plan

  • prs validate --strict passes
  • prs compile --dry-run shows expected output
  • prs compile --output /tmp/test generates all targets
  • Compiled agents match originals at 92% fidelity
  • Compiled commands match originals at 86% fidelity
  • Compiled CLAUDE.md/AGENTS.md match originals at 89%/97% fidelity
  • output.overwrite: false prevents overwriting existing files
  • No existing files modified

@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools Bot commented Mar 22, 2026

Analyzing 5000 commits...

@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools Bot commented Mar 22, 2026

Analysis Failed

Not Found - https://docs.github.com/rest/git/refs#get-a-reference

Troubleshooting
Cause Resolution
Large repository Analysis may timeout on repos with extensive history
API rate limits Wait 15 minutes before retrying
Network issues Queue timeout is 15 minutes; retry may succeed
Permissions Verify app has Contents: Read access

Retry: /ecc-tools analyze


Report Issue | ECC Tools

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 22, 2026

📝 Walkthrough

Walkthrough

Adds a new PromptScript configuration suite for ECC: project entrypoint, context, standards, restrictions, a command registry, and eight specialized agents plus a promptscript.yaml registering multi-tool targets and non-overwrite output behavior.

Changes

Cohort / File(s) Summary
Agent Definitions
.promptscript/agents.prs
New compiled agent registry (ecc-agents, syntax 1.1.0) adding eight named agents (planner, code-reviewer, security-reviewer, tdd-guide, architect, build-error-resolver, e2e-runner, doc-updater) with model/tool constraints and long-form instruction content. Review for prompt wording, allowed-tool scopes, and guardrails.
Command Registry
.promptscript/commands.prs
New command shortcuts (ecc-commands, syntax 1.1.0) adding eight prompt-backed slash commands (/plan,/tdd,/code-review,/build-fix,/verify,/e2e,/learn,/quality-gate) with gated flows and argument modes. Check execution gating, $ARGUMENTS handling, and commit-blocking rules.
Project Entry & Imports
.promptscript/project.prs
New project entrypoint tying together modules, identity and knowledge blocks, and imports of local PromptScript modules. Verify import paths and identity/knowledge content.
Context & Metadata
.promptscript/context.prs
New project context (ecc-context) declaring runtime, platform, package-manager detection/override, plugin version, and embedded documentation for agents/workflows. Validate package-manager override semantics.
Standards & Restrictions
.promptscript/standards.prs, .promptscript/restrictions.prs
New standards and mandatory restrictions: immutability, error handling, test/coverage targets (80%+), security hard rules (no secrets, input validation, auth checks, rate limiting), secret-management directives, and security-response workflow. Confirm alignment with CI checks and enforcement points.
Tooling Config
promptscript.yaml
New top-level PromptScript config registering entry .promptscript/project.prs, includes .promptscript/**/*.prs, output.overwrite: false, and multiple tool targets/tier mappings. Confirm target selections and commented-out cline rationale.

Sequence Diagram

sequenceDiagram
    actor Developer
    participant CLI as Commands Registry
    participant Project as ECC Project
    participant Orch as Agent Orchestrator
    participant Planner as Planner Agent
    participant TDD as TDD Agent
    participant Review as CodeReview Agent
    Developer->>CLI: Invoke /plan (or other command)
    CLI->>Project: Resolve command metadata
    Project->>Orch: Select agents & dispatch
    Orch->>Planner: Run planning prompt
    Planner-->>Developer: Phased plan + requirements
    Developer->>CLI: Invoke /tdd
    Orch->>TDD: Run tests-first workflow
    TDD-->>Developer: Tests, coverage targets
    Developer->>CLI: Invoke /code-review
    Orch->>Review: Run severity-filtered review
    Review-->>Developer: Findings & commit gate
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Poem

🐰
I burrowed prompts in tidy rows and planned,
Eight nimble agents ready, paw in hand,
Tests first, then fixes, reviews full of care,
Security watches, docs left neat and fair,
I hop off—code greener than the glen.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check ✅ Passed The title accurately and concisely describes the main change: adding PromptScript integration with a single source of truth for AI assistants, which is the core objective of the PR.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented Mar 22, 2026

Greptile Summary

This PR introduces a PromptScript integration layer — six .prs source files and a promptscript.yaml config — as an optional single-source compilation pipeline that can generate native instruction files for 10+ AI assistant platforms (Claude Code, GitHub Copilot, Cursor, Factory AI, etc.) from one set of definitions. The change is purely additive; no existing files are modified.

Key points:

  • output.overwrite: false in promptscript.yaml prevents overwriting existing canonical files (CLAUDE.md, AGENTS.md, .claude/agents/, .claude/commands/), but also means the claude and github targets silently produce no output for those paths — already flagged in a previous review thread.
  • agents.prs defines 8 agents while project.prs (@knowledge table) and the @identity block reference all 28 agents. Non-Claude compiled targets receive an identity that advertises 28 agents but only 8 are actually materialized — also flagged previously.
  • The include: [".promptscript/**/*.prs"] glob in promptscript.yaml combined with @use directives in project.prs may cause files to be processed twice by the compiler — raised in a prior thread.
  • The /learn command in commands.prs writes extracted skill files to ~/.claude/skills/learned/ (user-local), not to a project path. Skills learned by one contributor will not appear in the repository and cannot be reviewed or shared with the team.
  • context.prs hardcodes version: "1.9.0", which will drift silently as the project evolves unless manually kept in sync with the authoritative version source.
  • No .gitignore entries exist for the directories prs compile would generate (.cursor/, .factory/, .opencode/, .windsurf/, .agent/, .gemini/), meaning a git add . after compilation would stage 300+ generated files — previously noted.

Confidence Score: 3/5

  • Safe to merge as an additive tooling layer, but the compilation pipeline has several sharp edges that could surprise contributors who run prs compile.
  • No existing files are modified, so there is zero risk of regressions in the current Claude Code setup. However, the configuration has multiple subtle pitfalls (silent skip on existing files, 8 vs 28 agent mismatch, no .gitignore coverage, /learn path scoped to a single user's machine, hardcoded version) that could mislead contributors who actually use the tooling. These are not merge-blocking for the additive change itself, but they reduce confidence that the feature works as advertised out of the box.
  • promptscript.yaml (overwrite/gitignore behavior) and .promptscript/commands.prs (/learn path) warrant the most attention before contributors are directed to use prs compile.

Important Files Changed

Filename Overview
promptscript.yaml Central configuration with 10 compilation targets; overwrite: false globally set to guard existing files, but this also silently skips re-generation for the already-existing canonical files (CLAUDE.md, AGENTS.md, .claude/**). No .gitignore entries for generated directories, and the include glob combined with @use directives in project.prs risks double-processing files.
.promptscript/project.prs Entry-point file with @identity and @knowledge blocks; references 28 agents in the knowledge table but only 8 are defined in agents.prs, so non-Claude compilation targets would advertise a false capability count. All @use directives match the files present in the PR.
.promptscript/agents.prs Defines 8 of the 28 agents listed in project.prs @knowledge; the other 20 agents (language-specific reviewers, chief-of-staff, loop-operator, etc.) are absent and would not be compiled into non-Claude targets. Content and tool lists for the 8 included agents are detailed and accurate.
.promptscript/commands.prs Defines 8 slash commands; /verify uses $ARGUMENTS for mode switching (quick/full/pre-commit/pre-pr) which will compile verbatim and may not be interpreted correctly by non-Claude targets. /learn hardcodes ~/.claude/skills/learned/ as the output path, isolating learned skills to a single user's local machine.
.promptscript/context.prs Provides project metadata and architecture overview; version: "1.9.0" is hardcoded and will drift from the authoritative version source as the project evolves. Syntax now correctly set to 1.1.0, consistent with other .prs files.
.promptscript/standards.prs Defines coding standards including immutability rules, file organization, error handling, testing (TDD, 80% coverage), git conventions, and architecture patterns. Content is well-structured and accurate; no issues found.
.promptscript/restrictions.prs Enumerates security rules and quality gates as hard restrictions. Rules are clear, non-overlapping, and directly actionable. No issues found.

Sequence Diagram

sequenceDiagram
    participant Dev as Developer
    participant PRS as PromptScript CLI
    participant YAML as promptscript.yaml
    participant Entry as project.prs (@use directives)
    participant Files as context/standards/restrictions/commands/agents.prs
    participant Out as Compiled Outputs

    Dev->>PRS: prs compile
    PRS->>YAML: Read config (entry, include glob, targets, overwrite:false)
    YAML->>Entry: Load .promptscript/project.prs (entry point)
    Entry->>Files: @use ./context
    Entry->>Files: @use ./standards
    Entry->>Files: @use ./restrictions
    Entry->>Files: @use ./commands
    Entry->>Files: @use ./agents
    Note over Entry,Files: include glob also covers these files — potential double-processing
    Files-->>PRS: Merged AST (identity, knowledge, context, standards, restrictions, 8 commands, 8 agents)
    loop For each of 10 targets
        PRS->>Out: Generate platform-specific output
        alt File already exists AND overwrite:false
            Note over Out: Silently skipped (CLAUDE.md, AGENTS.md, .claude/agents/*, .claude/commands/*)
        else File does not exist
            Out-->>Dev: New file created (.cursor/, .factory/, .opencode/, etc.)
        end
    end
    Dev->>Dev: git add / git commit (risk: 300+ untracked generated files if no .gitignore)
Loading

Comments Outside Diff (2)

  1. .promptscript/commands.prs, line 1643-1645 (link)

    P2 /learn saves skills to a user-local path, not the project

    The output path ~/.claude/skills/learned/ writes to the current user's home directory. Any pattern a team member extracts via /learn would be siloed to their local machine and never committed to the repository. This undermines ECC's "single source of truth" goal — skills captured in one contributor's session are invisible to every other developer.

    If the intent is to share learned patterns across the team, the save path should point to a project-relative location (e.g., skills/learned/) so contributors can review, refine, and commit the extracted skill files. If user-local storage is intentional (e.g., personal snippets that shouldn't be committed), a comment explaining that decision would prevent confusion.

  2. .promptscript/context.prs, line 1699 (link)

    P2 Hardcoded version number will silently drift

    version: "1.9.0" is hardcoded in the PromptScript source. Every time the project version is bumped (in package.json, CLAUDE.md, or elsewhere), this field must be manually updated in lock-step — with no tooling to enforce it. When it drifts, compiled outputs for GitHub Copilot, Cursor, Factory AI, etc. will advertise the wrong version to their users.

    Consider driving this from the authoritative version source at compile time (if PromptScript supports variable injection), or adding a note in the contributing guide to update context.prs whenever the version changes.

Reviews (3): Last reviewed commit: "feat: add PromptScript integration for m..." | Re-trigger Greptile

Comment thread .promptscript/context.prs
Comment thread promptscript.yaml
Comment thread .promptscript/agents.prs
Comment thread promptscript.yaml
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

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

9 issues found across 7 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name=".promptscript/restrictions.prs">

<violation number="1" location=".promptscript/restrictions.prs:27">
P2: Hard-rule restrictions are missing required review gates (green CI and conflict resolution), causing inconsistent assistant guidance against established team process.</violation>
</file>

<file name=".promptscript/standards.prs">

<violation number="1" location=".promptscript/standards.prs:63">
P2: PR workflow standard omits required pre-review gates (green CI and conflict resolution), risking repeated non-reviewable PR submissions.</violation>

<violation number="2" location=".promptscript/standards.prs:69">
P1: Architecture standards encourage cloning external templates without explicit trust/vetting requirements, creating a supply-chain risk in shared agent guidance.</violation>
</file>

<file name=".promptscript/commands.prs">

<violation number="1" location=".promptscript/commands.prs:135">
P2: `/tdd` references `/test-coverage`, but `/test-coverage` is not defined in the shortcuts registry, creating a broken internal command link.</violation>

<violation number="2" location=".promptscript/commands.prs:207">
P2: Python build-check command is invalid as written: `python -m py_compile` requires explicit filenames, so build detection may choose a failing command.</violation>

<violation number="3" location=".promptscript/commands.prs:303">
P2: `/verify` reports and promises secrets/security scanning, but no secrets scan step is actually defined.</violation>
</file>

<file name=".promptscript/project.prs">

<violation number="1" location=".promptscript/project.prs:23">
P2: Agent availability documentation is inconsistent with actual agent definitions, creating a source-of-truth mismatch that can cause delegation to undefined agents.</violation>
</file>

<file name=".promptscript/agents.prs">

<violation number="1" location=".promptscript/agents.prs:227">
P2: Reviewer workflow is missing required pre-review gates (green CI and no merge conflicts) before starting code review.</violation>

<violation number="2" location=".promptscript/agents.prs:918">
P2: `build-error-resolver` references a non-existent agent (`refactor-cleaner`), creating a broken delegation target.</violation>
</file>

Since this is your first cubic review, here's how it works:

  • cubic automatically reviews your code and comments on bugs and improvements
  • Teach cubic by replying to its comments. cubic learns from your replies and gets better over time
  • Add one-off context when rerunning by tagging @cubic-dev-ai with guidance or docs links (including llms.txt)
  • Ask questions if you need clarification on any suggestion

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

architecture: {
apiResponse: "Consistent envelope with success indicator, data payload, error message, and pagination metadata"
repositoryPattern: "Encapsulate data access behind standard interface (findAll, findById, create, update, delete)"
skeletonProjects: "Search for battle-tested templates, evaluate with parallel agents, clone best match, iterate"
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot Mar 22, 2026

Choose a reason for hiding this comment

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

P1: Architecture standards encourage cloning external templates without explicit trust/vetting requirements, creating a supply-chain risk in shared agent guidance.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At .promptscript/standards.prs, line 69:

<comment>Architecture standards encourage cloning external templates without explicit trust/vetting requirements, creating a supply-chain risk in shared agent guidance.</comment>

<file context>
@@ -0,0 +1,77 @@
+  architecture: {
+    apiResponse: "Consistent envelope with success indicator, data payload, error message, and pagination metadata"
+    repositoryPattern: "Encapsulate data access behind standard interface (findAll, findById, create, update, delete)"
+    skeletonProjects: "Search for battle-tested templates, evaluate with parallel agents, clone best match, iterate"
+  }
+
</file context>
Fix with Cubic

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

This content is verbatim from the existing ECC files (AGENTS.md, agents/*.md). This PR faithfully reproduces the original — changes to the content itself should be separate PRs.

Comment thread .promptscript/restrictions.prs
git: {
commitFormat: "<type>: <description>"
types: [feat, fix, refactor, docs, test, chore, perf, ci]
prWorkflow: "Analyze full commit history -> draft comprehensive summary -> include test plan -> push with -u flag"
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot Mar 22, 2026

Choose a reason for hiding this comment

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

P2: PR workflow standard omits required pre-review gates (green CI and conflict resolution), risking repeated non-reviewable PR submissions.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At .promptscript/standards.prs, line 63:

<comment>PR workflow standard omits required pre-review gates (green CI and conflict resolution), risking repeated non-reviewable PR submissions.</comment>

<file context>
@@ -0,0 +1,77 @@
+  git: {
+    commitFormat: "<type>: <description>"
+    types: [feat, fix, refactor, docs, test, chore, perf, ci]
+    prWorkflow: "Analyze full commit history -> draft comprehensive summary -> include test plan -> push with -u flag"
+  }
+
</file context>
Fix with Cubic

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

This content is verbatim from the existing ECC files (AGENTS.md, agents/*.md). This PR faithfully reproduces the original — changes to the content itself should be separate PRs.

| pom.xml | mvn compile |
| build.gradle | ./gradlew compileJava |
| go.mod | go build ./... |
| pyproject.toml | python -m py_compile or mypy . |
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot Mar 22, 2026

Choose a reason for hiding this comment

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

P2: Python build-check command is invalid as written: python -m py_compile requires explicit filenames, so build detection may choose a failing command.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At .promptscript/commands.prs, line 207:

<comment>Python build-check command is invalid as written: `python -m py_compile` requires explicit filenames, so build detection may choose a failing command.</comment>

<file context>
@@ -0,0 +1,478 @@
+    | pom.xml | mvn compile |
+    | build.gradle | ./gradlew compileJava |
+    | go.mod | go build ./... |
+    | pyproject.toml | python -m py_compile or mypy . |
+
+    ## Step 2: Parse and Group Errors
</file context>
Fix with Cubic

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Valid — this is verbatim from the original commands/build-fix.md. The original ECC command has the same issue. Not changing it here to maintain fidelity with the source.

Comment thread .promptscript/commands.prs
Comment thread .promptscript/commands.prs Outdated
Comment thread .promptscript/project.prs
Comment thread .promptscript/agents.prs

When invoked:

1. **Gather context** — Run `git diff --staged` and `git diff` to see all changes. If no diff, check recent commits with `git log --oneline -5`.
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot Mar 22, 2026

Choose a reason for hiding this comment

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

P2: Reviewer workflow is missing required pre-review gates (green CI and no merge conflicts) before starting code review.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At .promptscript/agents.prs, line 227:

<comment>Reviewer workflow is missing required pre-review gates (green CI and no merge conflicts) before starting code review.</comment>

<file context>
@@ -0,0 +1,1135 @@
+
+    When invoked:
+
+    1. **Gather context** — Run `git diff --staged` and `git diff` to see all changes. If no diff, check recent commits with `git log --oneline -5`.
+    2. **Understand scope** — Identify which files changed, what feature/fix they relate to, and how they connect.
+    3. **Read surrounding code** — Don't review changes in isolation. Read the full file and understand imports, dependencies, and call sites.
</file context>
Fix with Cubic

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Mirrors the original agents/code-reviewer.md content. Pre-review gates are not part of the original agent definition.

Comment thread .promptscript/agents.prs
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (1)
.promptscript/agents.prs (1)

3-6: Syntax version inconsistency with other modules.

This file uses syntax: "1.1.0" while other .prs files use syntax: "1.0.0". If intentional (e.g., agents require newer syntax features), consider adding a comment explaining this. Otherwise, align versions for consistency.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.promptscript/agents.prs around lines 3 - 6, The `@meta` block for id
"ecc-agents" uses syntax: "1.1.0" which is inconsistent with other .prs modules;
either change the syntax value to "1.0.0" to match the rest of the repo or add
an inline comment in this file explaining why "1.1.0" is required (mentioning
any specific features used); update the `@meta` entry for id "ecc-agents"
accordingly so reviewers understand the intentionality and consistency is
restored.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.promptscript/commands.prs:
- Around line 129-136: The integration list references an undefined command
`/test-coverage`; update the flow to match the actual shortcuts by either adding
a `/test-coverage` entry to the `@shortcuts` block (defining its behavior and
usage) or replace the reference in the Integration with Other Commands section
with the existing `/verify` command (or another appropriate existing shortcut).
Ensure the symbol `/test-coverage` is removed or defined so the doc and
`@shortcuts` stay consistent.

In `@promptscript.yaml`:
- Around line 9-30: The targets block enables full/standard builds for claude,
opencode, and codex which will be written by prs compile and may overwrite
existing project configs; update promptscript.yaml to set output.overwrite:
false (or add a per-target protection flag if supported) to prevent accidental
replacement of .claude/skills/, .opencode/opencode.json, and .codex/config.toml,
add a note in the PR description documenting that prs compile should be run with
prs compile --dry-run to preview changes, and explicitly state the intended
merge/overwrite policy for these targets so reviewers know the change is truly
additive.

---

Nitpick comments:
In @.promptscript/agents.prs:
- Around line 3-6: The `@meta` block for id "ecc-agents" uses syntax: "1.1.0"
which is inconsistent with other .prs modules; either change the syntax value to
"1.0.0" to match the rest of the repo or add an inline comment in this file
explaining why "1.1.0" is required (mentioning any specific features used);
update the `@meta` entry for id "ecc-agents" accordingly so reviewers understand
the intentionality and consistency is restored.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: d58bbb5d-7f92-4dcc-bda3-a2e847fbe6ae

📥 Commits

Reviewing files that changed from the base of the PR and between 57fa3b5 and d106faf.

📒 Files selected for processing (7)
  • .promptscript/agents.prs
  • .promptscript/commands.prs
  • .promptscript/context.prs
  • .promptscript/project.prs
  • .promptscript/restrictions.prs
  • .promptscript/standards.prs
  • promptscript.yaml

Comment thread .promptscript/commands.prs
Comment thread promptscript.yaml
@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools Bot commented Mar 22, 2026

Analyzing 5000 commits...

@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools Bot commented Mar 22, 2026

Analysis Failed

Not Found - https://docs.github.com/rest/git/refs#get-a-reference

Troubleshooting
Cause Resolution
Large repository Analysis may timeout on repos with extensive history
API rate limits Wait 15 minutes before retrying
Network issues Queue timeout is 15 minutes; retry may succeed
Permissions Verify app has Contents: Read access

Retry: /ecc-tools analyze


Report Issue | ECC Tools

@mrwogu
Copy link
Copy Markdown
Author

mrwogu commented Mar 22, 2026

Addressed review feedback in 3c0e02e

Thanks for the thorough reviews! Here's what was fixed (squashed into a single commit):

Fixed issues

Reviewer Issue Fix
Greptile, CodeRabbit Overwrite risk — prs compile could overwrite CLAUDE.md, AGENTS.md Added output.overwrite: false to promptscript.yaml
Greptile, CodeRabbit Syntax version mismatch (1.0.0 vs 1.1.0) All files now use syntax: "1.1.0" consistently
Cubic, CodeRabbit /tdd references undefined /test-coverage Changed to /verify
Cubic /verify promises secrets scan but no step defined Added "Secrets Scan" as step 5
Cubic /plan and /tdd missing Example Usage / How It Works Added both sections with detailed content

Acknowledged but not changed

Issue Reason
Only 8 of 28 agents defined By design for this demo PR. The remaining 20 agents (language-specific reviewers, resolvers, etc.) exist in agents/ and would be migrated incrementally. The @knowledge block in project.prs documents all 28 for reference.
refactor-cleaner referenced in build-error-resolver Valid cross-reference — agents/refactor-cleaner.md exists in the repo. It's one of the 20 not yet migrated to .prs.
No .gitignore for compiled outputs With output.overwrite: false, prs compile refuses to overwrite existing files. A .gitignore can be added if the project adopts PromptScript as the source of truth.
Architecture standards "supply chain risk" (Cubic) Verbatim content from existing AGENTS.md — not introduced by this PR.
Missing pre-review gates (Cubic) Same — mirrors existing agent content. Adding CI gates would be a separate enhancement.

Comment thread promptscript.yaml
Comment thread promptscript.yaml
Comment thread .promptscript/commands.prs
…mpilation

Add .promptscript/ source files and promptscript.yaml configuration that
define ECC's core identity, standards, restrictions, commands, and agents
in a single source of truth. Running `prs compile` generates native output
for 10+ AI coding assistants simultaneously.

Source files:
- project.prs: entry point with identity, core principles, full 28-agent table
- context.prs: project architecture, dev workflow, contributing guide
- standards.prs: coding conventions, testing, git workflow
- restrictions.prs: security rules and hard constraints
- commands.prs: 8 slash commands with full content and examples
- agents.prs: 8 core agents with complete instructions and code examples

Safety: output.overwrite: false prevents overwriting existing files.

Targets: Claude Code, GitHub Copilot, Cursor, Factory AI, OpenCode,
Windsurf, Codex, Gemini CLI, Antigravity
@mrwogu mrwogu force-pushed the feat/promptscript-integration branch from adf6565 to 3c0e02e Compare March 22, 2026 17:09
@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools Bot commented Mar 22, 2026

Analyzing 5000 commits...

@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools Bot commented Mar 22, 2026

Analysis Failed

Not Found - https://docs.github.com/rest/git/refs#get-a-reference

Troubleshooting
Cause Resolution
Large repository Analysis may timeout on repos with extensive history
API rate limits Wait 15 minutes before retrying
Network issues Queue timeout is 15 minutes; retry may succeed
Permissions Verify app has Contents: Read access

Retry: /ecc-tools analyze


Report Issue | ECC Tools

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🧹 Nitpick comments (1)
.promptscript/commands.prs (1)

194-197: Keep /code-review and /build-fix thin by delegating to the agent definitions.

These two shortcuts carry their own long rubrics even though .promptscript/agents.prs already defines code-reviewer and build-error-resolver. That splits the source of truth this PR is trying to establish and makes command/agent drift more likely.

Also applies to: 240-243

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.promptscript/commands.prs around lines 194 - 197, The /code-review and
/build-fix command entries are duplicating long rubrics instead of delegating to
the agent definitions; update the command objects for "/code-review" and
"/build-fix" to be thin wrappers that set prompt: true/description as needed and
reference the existing agent definitions (code-reviewer and
build-error-resolver) in .promptscript/agents.prs rather than embedding their
rubrics, ensuring the commands delegate execution to those agent definitions to
avoid source-of-truth drift.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.promptscript/agents.prs:
- Around line 863-898: The policy text in the prompt script includes directives
that automatically add missing dependencies and remove package-lock.json
(notably the "Add missing dependencies" bullet and the Quick Recovery commands
that run "rm -rf package-lock.json"), which conflicts with the
minimal-diff/stop-and-ask flow in .promptscript/commands.prs; update the
.promptscript/agents.prs content so that the "Add missing dependencies"
instruction is changed to require user confirmation (or to instruct the agent to
stop and ask) and remove or guard the package-lock.json deletion from the Quick
Recovery section, replacing it with a note to prompt the user before any
destructive actions; ensure references to these exact strings ("Add missing
dependencies", "rm -rf package-lock.json") are updated so the agent follows the
stop-and-ask behavior rather than performing automatic deletions.

In @.promptscript/commands.prs:
- Around line 490-497: Step 5 currently hardcodes the persistence path
"~/.claude/skills/learned/" which makes the /learn directive Claude-specific;
update the instruction to be target-neutral by replacing the literal path with
an abstract reference like "the target's configured skills directory" or a
placeholder (e.g., "<skills_persist_dir>") and ensure any code or templates that
use the string "~/.claude/skills/learned/" (search for that exact literal) are
changed to read from the target-specific configuration or environment variable
so each compiler target maps to its own persistence location.
- Around line 252-260: The pyproject.toml build-check row currently uses "python
-m py_compile" which requires file args and will fail; update the table entry
for the "pyproject.toml" / Python row to use a recursive, quiet check command
"python -m compileall -q ." so the build-check performs project-wide syntax
validation instead of invoking py_compile with no arguments.

---

Nitpick comments:
In @.promptscript/commands.prs:
- Around line 194-197: The /code-review and /build-fix command entries are
duplicating long rubrics instead of delegating to the agent definitions; update
the command objects for "/code-review" and "/build-fix" to be thin wrappers that
set prompt: true/description as needed and reference the existing agent
definitions (code-reviewer and build-error-resolver) in .promptscript/agents.prs
rather than embedding their rubrics, ensuring the commands delegate execution to
those agent definitions to avoid source-of-truth drift.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ed37b418-e9ce-41fb-be7d-a7b7437ddc04

📥 Commits

Reviewing files that changed from the base of the PR and between adf6565 and 3c0e02e.

📒 Files selected for processing (7)
  • .promptscript/agents.prs
  • .promptscript/commands.prs
  • .promptscript/context.prs
  • .promptscript/project.prs
  • .promptscript/restrictions.prs
  • .promptscript/standards.prs
  • promptscript.yaml
✅ Files skipped from review due to trivial changes (3)
  • promptscript.yaml
  • .promptscript/standards.prs
  • .promptscript/project.prs
🚧 Files skipped from review as they are similar to previous changes (2)
  • .promptscript/restrictions.prs
  • .promptscript/context.prs

Comment thread .promptscript/agents.prs
Comment on lines +863 to +898
**DO:**
- Add type annotations where missing
- Add null checks where needed
- Fix imports/exports
- Add missing dependencies
- Update type definitions
- Fix configuration files

**DON'T:**
- Refactor unrelated code
- Change architecture
- Rename variables (unless causing error)
- Add new features
- Change logic flow (unless fixing error)
- Optimize performance or style

## Priority Levels

| Level | Symptoms | Action |
|-------|----------|--------|
| CRITICAL | Build completely broken, no dev server | Fix immediately |
| HIGH | Single file failing, new code type errors | Fix soon |
| MEDIUM | Linter warnings, deprecated APIs | Fix when possible |

## Quick Recovery

```bash
# Nuclear option: clear all caches
rm -rf .next node_modules/.cache && npm run build

# Reinstall dependencies
rm -rf node_modules package-lock.json && npm install

# Fix ESLint auto-fixable
npx eslint . --fix
```
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot Mar 22, 2026

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Don't let the build fixer rewrite dependencies unprompted.

Line 867 and Lines 893-895 tell the agent to add missing dependencies and even delete package-lock.json. That conflicts with the “minimal diffs” contract here and with .promptscript/commands.prs Lines 281-286, where missing-dependency cases are supposed to stop and ask the user first.

Suggested change
 **DO:**
 - Add type annotations where missing
 - Add null checks where needed
 - Fix imports/exports
-- Add missing dependencies
+- Ask for explicit approval before changing dependencies, manifests, or lockfiles
 - Update type definitions
 - Fix configuration files
@@
-# Reinstall dependencies
-rm -rf node_modules package-lock.json && npm install
+# Dependency repair changes manifests/lockfiles; stop and ask the user before doing it
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.promptscript/agents.prs around lines 863 - 898, The policy text in the
prompt script includes directives that automatically add missing dependencies
and remove package-lock.json (notably the "Add missing dependencies" bullet and
the Quick Recovery commands that run "rm -rf package-lock.json"), which
conflicts with the minimal-diff/stop-and-ask flow in .promptscript/commands.prs;
update the .promptscript/agents.prs content so that the "Add missing
dependencies" instruction is changed to require user confirmation (or to
instruct the agent to stop and ask) and remove or guard the package-lock.json
deletion from the Quick Recovery section, replacing it with a note to prompt the
user before any destructive actions; ensure references to these exact strings
("Add missing dependencies", "rm -rf package-lock.json") are updated so the
agent follows the stop-and-ask behavior rather than performing automatic
deletions.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

This content is verbatim from the original agents/build-error-resolver.md in the ECC repository. The "add missing dependencies" and "delete lock file" instructions are part of the original agent's recovery strategies. Changing the behavior here would break fidelity with the source — content improvements should be separate PRs to the original agent files.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@mrwogu, understood — thank you for the clarification. Since .promptscript/agents.prs is a verbatim fidelity mirror of the original agents/build-error-resolver.md, modifying the behavior here would indeed break that fidelity contract. I'll withdraw the suggestion; any behavioral improvements (like the stop-and-ask guardrail for dependency changes) should be raised against the original agents/build-error-resolver.md in a separate PR.

(ミ` ω ´ミ)
Noted for future reviews — behavior changes belong upstream.


✏️ Learnings added
Learnt from: mrwogu
Repo: affaan-m/everything-claude-code PR: 756
File: .promptscript/agents.prs:863-898
Timestamp: 2026-03-22T17:30:07.313Z
Learning: In the affaan-m/everything-claude-code repo, the content of agent definitions inside `.promptscript/agents.prs` is verbatim from the corresponding original agent files (e.g., `agents/build-error-resolver.md`). Do not suggest inline content or behavioral changes to `.prs` agent blocks; any such improvements must be directed to the original agent source files (under `agents/`) via separate PRs to preserve fidelity.

Note: Learnings are effective only in the context of similar code segments. To apply general coding guidelines, please configure review instructions. You can manage existing learnings in the app.


🧠 Learnings used
Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: .cursor/rules/common-development-workflow.md:0-0
Timestamp: 2026-03-01T20:07:46.281Z
Learning: Use tdd-guide agent: write tests first (RED), implement to pass tests (GREEN), refactor (IMPROVE), and verify 80%+ test coverage

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T14:31:21.213Z
Learning: Applies to **/*.{js,ts,jsx,tsx,py,go,rs,kt,java,cpp} : Write tests before implementation as part of TDD workflow (RED → GREEN → IMPROVE), with minimum 80% code coverage required

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: docs/zh-CN/AGENTS.md:0-0
Timestamp: 2026-03-21T10:02:53.983Z
Learning: Follow TDD workflow: write tests first (RED), implement minimally (GREEN), then refactor (IMPROVE), verifying 80%+ coverage

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:49:50.280Z
Learning: Applies to **/*.{test,spec}.{js,ts,jsx,tsx,py,go,java,kt,cpp,rs} : Write tests before implementation using TDD workflow (write test first in RED state, implement minimally to reach GREEN state, then refactor while maintaining 80%+ coverage)

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: docs/zh-CN/AGENTS.md:0-0
Timestamp: 2026-03-21T10:02:53.983Z
Learning: Write tests before implementation (test-driven development), requiring 80%+ code coverage

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: .cursor/rules/common-testing.md:0-0
Timestamp: 2026-03-01T20:08:27.924Z
Learning: Follow Test-Driven Development (TDD) workflow: write tests first (RED), run failing test, write minimal implementation (GREEN), run passing test, then refactor (IMPROVE), and verify 80%+ coverage

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:50:00.223Z
Learning: Follow TDD workflow: Write test first (RED), write minimal implementation (GREEN), refactor (IMPROVE), verify 80%+ coverage

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: .cursor/rules/common-testing.md:0-0
Timestamp: 2026-03-01T20:08:27.924Z
Learning: Use the tdd-guide agent proactively when developing new features to enforce the write-tests-first approach

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:50:00.223Z
Learning: Applies to **/*.{js,ts,tsx,jsx,py,java,go,kt,cpp,c,rs} : Write tests before implementation with 80%+ code coverage required

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: docs/zh-CN/AGENTS.md:0-0
Timestamp: 2026-03-09T03:37:09.183Z
Learning: Applies to docs/zh-CN/**/*.{js,ts,tsx,go,py} : Write tests before implementation (RED → GREEN → IMPROVE cycle) with minimum 80% code coverage

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:50:00.223Z
Learning: Use build-error-resolver agent for build troubleshooting: analyze errors → fix incrementally → verify after each fix

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: docs/zh-CN/AGENTS.md:0-0
Timestamp: 2026-03-21T10:02:53.984Z
Learning: Use build-error-resolver agent for build failures: analyze error → incrementally fix → verify after each fix

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: .cursor/rules/common-performance.md:0-0
Timestamp: 2026-02-28T10:05:48.562Z
Learning: When build fails, use build-error-resolver agent, analyze error messages, fix incrementally, and verify after each fix

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:49:50.280Z
Learning: Use build-error-resolver agent to troubleshoot build errors incrementally and verify fixes after each step

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: docs/zh-CN/AGENTS.md:0-0
Timestamp: 2026-03-11T04:31:05.187Z
Learning: Use build-error-resolver agent to analyze and incrementally fix build and type errors, verifying after each fix

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: .cursor/rules/common-performance.md:0-0
Timestamp: 2026-03-01T20:08:10.589Z
Learning: If build fails, use build-error-resolver agent, analyze error messages, fix incrementally, and verify after each fix

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T14:31:21.213Z
Learning: Delegate domain tasks to specialized agents: use planner for complex features, architect for system design, tdd-guide for tests, code-reviewer after writing code, security-reviewer before commits

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:49:50.280Z
Learning: Rust code should be reviewed by rust-reviewer agent and build errors resolved by rust-build-resolver agent

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:49:50.280Z
Learning: C++ code should be reviewed by cpp-reviewer agent and build errors resolved by cpp-build-resolver agent

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:49:50.280Z
Learning: Go code should be reviewed by go-reviewer agent and build errors resolved by go-build-resolver agent

Learnt from: mrwogu
Repo: affaan-m/everything-claude-code PR: 756
File: .promptscript/commands.prs:490-497
Timestamp: 2026-03-22T17:29:18.530Z
Learning: In this repo, treat `.promptscript/*.prs` as verbatim fidelity mirrors of their corresponding originals (e.g., the original for `commands/learn.md`). Do not suggest edits in `.prs` to change or hardcode platform-specific paths (such as mapping `~/.claude/skills/learned/` to `.cursor/skills/`). Any platform-specific path remapping must be implemented in the PromptScript compiler’s formatter layer at compile time; if you see an incorrect path in output, direct the fix to the upstream PromptScript compiler rather than modifying the `.prs` sources.

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: .cursor/rules/common-agents.md:0-0
Timestamp: 2026-03-01T20:07:30.799Z
Learning: Use the **build-error-resolver** agent (located in `~/.claude/agents/`) when build failures occur

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: docs/zh-CN/AGENTS.md:0-0
Timestamp: 2026-03-08T12:08:51.781Z
Learning: Delegate domain tasks to specialized agents (planner, architect, tdd-guide, code-reviewer, security-reviewer, etc.) without requiring user prompts

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:49:50.280Z
Learning: Delegate to specialized agents for domain tasks (26 available agents including planner, architect, tdd-guide, code-reviewer, security-reviewer, and language-specific reviewers)

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-02-19T12:57:45.498Z
Learning: Applies to agents/**/*.md : Agents should be formatted as Markdown with YAML frontmatter containing name, description, tools, and model fields

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:50:00.223Z
Learning: Use specialized agents proactively: complex features → planner, code just written → code-reviewer, bug fix/new feature → tdd-guide, architectural decisions → architect, security-sensitive code → security-reviewer

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-02-19T12:57:45.498Z
Learning: Follow contributing guidelines from CONTRIBUTING.md for agents (Markdown with frontmatter), skills (clear sections), commands (Markdown with description), and hooks (JSON with matcher and hooks array)

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: docs/zh-CN/CLAUDE.md:0-0
Timestamp: 2026-03-07T22:48:24.598Z
Learning: Applies to docs/zh-CN/agents/**/*.md : Agents must be formatted as Markdown files with YAML front matter containing: name, description, tools, and model

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: docs/zh-CN/AGENTS.md:0-0
Timestamp: 2026-03-21T10:02:53.983Z
Learning: Delegate domain tasks to specialized agents (planner for complex features, tdd-guide for test-driven development, code-reviewer for code quality, security-reviewer for security, architect for architecture decisions)

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:49:50.280Z
Learning: TypeScript/JavaScript code should be reviewed by typescript-reviewer agent

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: .cursor/rules/common-agents.md:0-0
Timestamp: 2026-03-01T20:07:30.799Z
Learning: Use the **planner** agent (located in `~/.claude/agents/`) for implementation planning of complex features and refactoring

Comment thread .promptscript/commands.prs
Comment on lines +490 to +497
## Process

1. Review the session for extractable patterns
2. Identify the most valuable/reusable insight
3. Draft the skill file
4. Ask user to confirm before saving
5. Save to ~/.claude/skills/learned/

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot Mar 22, 2026

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Make /learn target-neutral.

Line 496 hardcodes ~/.claude/skills/learned/, but this file is the shared source for non-Claude targets too. That makes the generated shortcut portable only by accident. Keep the instruction abstract and let each compiler target map its own persistence location.

Suggested change
-    5. Save to ~/.claude/skills/learned/
+    5. Save to the target assistant's learned-skills location (or the project-defined equivalent)
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
## Process
1. Review the session for extractable patterns
2. Identify the most valuable/reusable insight
3. Draft the skill file
4. Ask user to confirm before saving
5. Save to ~/.claude/skills/learned/
## Process
1. Review the session for extractable patterns
2. Identify the most valuable/reusable insight
3. Draft the skill file
4. Ask user to confirm before saving
5. Save to the target assistant's learned-skills location (or the project-defined equivalent)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.promptscript/commands.prs around lines 490 - 497, Step 5 currently
hardcodes the persistence path "~/.claude/skills/learned/" which makes the
/learn directive Claude-specific; update the instruction to be target-neutral by
replacing the literal path with an abstract reference like "the target's
configured skills directory" or a placeholder (e.g., "<skills_persist_dir>") and
ensure any code or templates that use the string "~/.claude/skills/learned/"
(search for that exact literal) are changed to read from the target-specific
configuration or environment variable so each compiler target maps to its own
persistence location.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Good catch. However, this content is verbatim from the original commands/learn.md in the ECC repository, which is Claude Code-specific by design. The PromptScript compiler handles target adaptation at compile time — for Claude targets it preserves the path as-is, while other formatters can remap it to their platform's equivalent (e.g., .cursor/skills/ for Cursor). Changing the source content here would break fidelity with the original. The right fix is in the PromptScript compiler's formatter layer, not in the .prs source — tracked upstream.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@mrwogu, that makes sense — if the .prs source is intentionally kept as a fidelity mirror of the original commands/learn.md, and the PromptScript compiler's formatter layer is responsible for remapping platform-specific paths at compile time, then the fix does belong upstream rather than in the source file. Thanks for the clear explanation of the compilation architecture.


✏️ Learnings added
Learnt from: mrwogu
Repo: affaan-m/everything-claude-code PR: 756
File: .promptscript/commands.prs:490-497
Timestamp: 2026-03-22T17:29:18.530Z
Learning: In the `affaan-m/everything-claude-code` repo, `.promptscript/*.prs` source files are kept as verbatim fidelity mirrors of their corresponding originals (e.g., `commands/learn.md`). Platform-specific path remapping (e.g., `~/.claude/skills/learned/` → `.cursor/skills/` for Cursor) is handled by the PromptScript compiler's formatter layer at compile time, not in the `.prs` source. Suggesting changes to hardcoded platform paths in `.prs` files is incorrect; such fixes belong in the upstream PromptScript compiler.

Note: Learnings are effective only in the context of similar code segments. To apply general coding guidelines, please configure review instructions. You can manage existing learnings in the app.


🧠 Learnings used
Learnt from: imrobinsingh
Repo: affaan-m/everything-claude-code PR: 503
File: skills/data-scraper-agent/SKILL.md:1-748
Timestamp: 2026-03-15T19:02:48.915Z
Learning: In the `skills/` directory of the `affaan-m/everything-claude-code` repo, the standard convention is to name the skill file `SKILL.md` (uppercase) inside the skill's folder. The lowercase-hyphen naming convention applies to the **folder name** (e.g., `data-scraper-agent/`, `claude-api/`), NOT to the `SKILL.md` file inside it. Flagging `SKILL.md` as a naming violation is incorrect.

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: docs/zh-CN/AGENTS.md:0-0
Timestamp: 2026-03-21T10:02:53.984Z
Learning: Analyze complete commit history before drafting PR summaries; include testing plan in PR description

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: .cursor/rules/common-git-workflow.md:0-0
Timestamp: 2026-03-01T20:07:52.144Z
Learning: Draft comprehensive PR summary and include test plan with TODOs when creating pull requests

Learnt from: CR
Repo: affaan-m/everything-claude-code PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-03-20T03:50:00.223Z
Learning: In PR workflow: analyze full commit history, draft comprehensive summary, include test plan, push with `-u` flag

@mrwogu mrwogu changed the title feat: PromptScript integration — single source of truth for 10+ AI assistants feat: PromptScript integration - single source of truth for 10+ AI assistants Mar 22, 2026
@affaan-m
Copy link
Copy Markdown
Owner

Interesting PromptScript integration concept. Will review this week.

@affaan-m
Copy link
Copy Markdown
Owner

Closing — this modifies core ECC files (patterns.md, performance.md, coding-standards) to promote a third-party product (toonformat.dev). We don't allow promotional modifications to existing skills/rules. If TOON proves widely adopted, we'd consider a standalone skill in a future PR.

@mrwogu
Copy link
Copy Markdown
Author

mrwogu commented Mar 22, 2026

@affaan-m I think you got the PR wrong (TOON)

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants