From 0dc471f4ac1043a09e2d9ba81747b44d338cc618 Mon Sep 17 00:00:00 2001 From: Zhongwei Li Date: Sat, 29 Nov 2025 18:02:25 +0800 Subject: [PATCH] Initial commit --- .claude-plugin/plugin.json | 12 +++++++ README.md | 3 ++ commands/comic-book-guy.md | 16 +++++++++ commands/frink.md | 18 ++++++++++ commands/lisa.md | 15 +++++++++ commands/martin.md | 15 +++++++++ commands/mayor-quimby.md | 16 +++++++++ commands/ralph.md | 17 ++++++++++ commands/skinner.md | 16 +++++++++ plugin.lock.json | 69 ++++++++++++++++++++++++++++++++++++++ 10 files changed, 197 insertions(+) create mode 100644 .claude-plugin/plugin.json create mode 100644 README.md create mode 100644 commands/comic-book-guy.md create mode 100644 commands/frink.md create mode 100644 commands/lisa.md create mode 100644 commands/martin.md create mode 100644 commands/mayor-quimby.md create mode 100644 commands/ralph.md create mode 100644 commands/skinner.md create mode 100644 plugin.lock.json diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json new file mode 100644 index 0000000..fa384c6 --- /dev/null +++ b/.claude-plugin/plugin.json @@ -0,0 +1,12 @@ +{ + "name": "springfield", + "description": "Multi-phase autonomous workflow orchestration with debate-driven refinement. Research (Lisa), Plan (Frink), Document (Martin), Implement (Ralph), and QA (Comic Book Guy) working together through eventual consistency.", + "version": "1.6.1", + "author": { + "name": "Bradley Golden", + "url": "https://github.com/bradleygolden" + }, + "commands": [ + "./commands/" + ] +} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..e6caade --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# springfield + +Multi-phase autonomous workflow orchestration with debate-driven refinement. Research (Lisa), Plan (Frink), Document (Martin), Implement (Ralph), and QA (Comic Book Guy) working together through eventual consistency. diff --git a/commands/comic-book-guy.md b/commands/comic-book-guy.md new file mode 100644 index 0000000..fec866e --- /dev/null +++ b/commands/comic-book-guy.md @@ -0,0 +1,16 @@ +--- +description: Validate implementation quality (Comic Book Guy - harsh critic) +allowed-tools: Bash(scripts/comic-book-guy.sh:*) +--- + +# Comic Book Guy - QA Phase + +*"Worst. Implementation. Ever. ...Or is it?"* + +Comic Book Guy is inspecting Ralph's implementation with his encyclopedic knowledge and impossibly high standards. He'll run tests, check code quality, and deliver his harsh judgment! + +**Validating:** Ralph's implementation against `$1/prompt.md` + +**Note:** This command is informational only. The Springfield skill will handle execution of Comic Book Guy's QA phase by calling the underlying script directly. Check his progress: +- `$1/qa-report.md` - His verdict (APPROVED, KICK_BACK, or ESCALATE) +- `$1/state.json` - Current status diff --git a/commands/frink.md b/commands/frink.md new file mode 100644 index 0000000..b620229 --- /dev/null +++ b/commands/frink.md @@ -0,0 +1,18 @@ +--- +description: Create implementation prompt based on complexity (Professor Frink - scientific planner) +allowed-tools: Bash(scripts/frink.sh:*) +--- + +# Professor Frink - Planning Phase + +*"With the calculating and the planning, glavin!"* + +Professor Frink is in his laboratory, reviewing Lisa's research and Mayor Quimby's decision. He'll create a scientifically sound implementation plan using rigorous methodology! + +**Inputs:** +- `$1/research.md` (Lisa's findings) +- `$1/decision.txt` (Quimby's complexity decision) + +**Note:** This command is informational only. The Springfield skill will handle execution of Frink's planning phase by calling the underlying script directly. You can check his progress: +- `$1/plan-v1.md` or `$1/prompt.md` - Frink's plans +- `$1/state.json` - Current status diff --git a/commands/lisa.md b/commands/lisa.md new file mode 100644 index 0000000..d49d948 --- /dev/null +++ b/commands/lisa.md @@ -0,0 +1,15 @@ +--- +description: Research codebase for Springfield workflow task (Lisa Simpson - thorough researcher) +argument-hint: [task-description] +allowed-tools: Bash(scripts/lisa.sh:*) +--- + +# Lisa - Research Phase + +*"I'll get all the information we need!"* + +Lisa is heading to the library to research your task thoroughly. She'll investigate the codebase, find patterns, and document everything she discovers! + +**Task:** $2 + +**Note:** This command is informational only. The Springfield skill will handle execution of Lisa's research phase by calling the underlying script directly. diff --git a/commands/martin.md b/commands/martin.md new file mode 100644 index 0000000..829c9a4 --- /dev/null +++ b/commands/martin.md @@ -0,0 +1,15 @@ +--- +description: Create prospective documentation based on complexity (Martin Prince - perfectionist documenter) +argument-hint: [session-directory] +allowed-tools: Bash(scripts/martin.sh:*) +--- + +# Martin - Documentation Phase + +*"I've earned an A+ on this documentation!"* + +Martin is preparing comprehensive documentation for your task! He'll determine the work item type, create the appropriate PRD or doc, and ensure everything is academically rigorous! + +**Session:** $2 + +**Note:** This command is informational only. The Springfield skill will handle execution of Martin's documentation phase by calling the underlying script directly. diff --git a/commands/mayor-quimby.md b/commands/mayor-quimby.md new file mode 100644 index 0000000..4ea7b75 --- /dev/null +++ b/commands/mayor-quimby.md @@ -0,0 +1,16 @@ +--- +description: Assess task complexity from research findings (Mayor Quimby - makes decisions) +allowed-tools: Bash(scripts/quimby.sh:*) +--- + +# Mayor Quimby - Decision Phase + +*"I hereby declare this meeting in session!"* + +Mayor Quimby is reviewing Lisa's research findings from his office. As mayor, he'll make the executive decision on whether this is a SIMPLE or COMPLEX task. + +**Reviewing:** `$1/research.md` + +**Note:** This command is informational only. The Springfield skill will handle execution of Mayor Quimby's decision phase by calling the underlying script directly. Check his progress: +- `$1/decision.txt` - SIMPLE or COMPLEX decision +- `$1/state.json` - Current status diff --git a/commands/ralph.md b/commands/ralph.md new file mode 100644 index 0000000..25d7d0e --- /dev/null +++ b/commands/ralph.md @@ -0,0 +1,17 @@ +--- +description: Execute autonomous implementation loop (Ralph Wiggum - I'm learnding!) +allowed-tools: Bash(scripts/ralph.sh:*) +--- + +# Ralph - Implementation Loop + +*"I'm learnding!"* + +Ralph is ready to implement! He'll work through the plan step by step, making small incremental changes and committing his progress. He's very excited to help! + +**Implementing:** `$1/prompt.md` + +**Note:** This command is informational only. The Springfield skill will handle execution of Ralph's implementation phase by calling the underlying script directly. Ralph runs autonomously and you can check his progress: +- `$1/scratchpad.md` - Ralph's latest work (updated every iteration) +- `$1/state.json` - Current status and iteration count +- `$1/completion.md` - Will appear when Ralph is done! diff --git a/commands/skinner.md b/commands/skinner.md new file mode 100644 index 0000000..34735db --- /dev/null +++ b/commands/skinner.md @@ -0,0 +1,16 @@ +--- +description: Review implementation plan for quality (Principal Skinner - strict reviewer) +allowed-tools: Bash(scripts/skinner.sh:*) +--- + +# Principal Skinner - Plan Review Phase + +*"Pathetic work, Professor. Let me show you how it's done."* + +Principal Skinner is reviewing Professor Frink's plan with his strict, by-the-book standards. He'll point out any flaws and demand improvements! + +**Reviewing:** `$1/plan-v1.md` + +**Note:** This command is informational only. The Springfield skill will handle execution of Skinner's review phase by calling the underlying script directly. Check his progress: +- `$1/review.md` - His detailed feedback +- `$1/state.json` - Current status diff --git a/plugin.lock.json b/plugin.lock.json new file mode 100644 index 0000000..9065a59 --- /dev/null +++ b/plugin.lock.json @@ -0,0 +1,69 @@ +{ + "$schema": "internal://schemas/plugin.lock.v1.json", + "pluginId": "gh:bradleygolden/springfield:", + "normalized": { + "repo": null, + "ref": "refs/tags/v20251128.0", + "commit": "c272bec1cc95c28d272dbd9cdd0d73ffe50d5374", + "treeHash": "6a6460071ac80b0ae85267b795aeb79503ec1905345d58bfb695bbce76a3d9e6", + "generatedAt": "2025-11-28T10:14:24.208775Z", + "toolVersion": "publish_plugins.py@0.2.0" + }, + "origin": { + "remote": "git@github.com:zhongweili/42plugin-data.git", + "branch": "master", + "commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390", + "repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data" + }, + "manifest": { + "name": "springfield", + "description": "Multi-phase autonomous workflow orchestration with debate-driven refinement. Research (Lisa), Plan (Frink), Document (Martin), Implement (Ralph), and QA (Comic Book Guy) working together through eventual consistency.", + "version": "1.6.1" + }, + "content": { + "files": [ + { + "path": "README.md", + "sha256": "a18e3663426f6a1c1313e4fc5294e5c851cb6e1b6dfa92742a13ef708d8b380b" + }, + { + "path": ".claude-plugin/plugin.json", + "sha256": "10cc222fc97dc666c4be125b2e36eb81a337032514c244db62b31ec3da1bbe72" + }, + { + "path": "commands/mayor-quimby.md", + "sha256": "cfa7554e39c21dd5a4c286f1aa95dfafcfc2ca01853e9894203512391c1e8280" + }, + { + "path": "commands/lisa.md", + "sha256": "09b55e176a76ef0b668ce65256d0d6c7a33f5340474ae57c4b66812c923d01ca" + }, + { + "path": "commands/comic-book-guy.md", + "sha256": "69731983bcd7205d42aee38f31c4f72d0d3a01179062db6995fa6d79f18b0cef" + }, + { + "path": "commands/ralph.md", + "sha256": "afc850c0678c1212a7afd2c65e294d2745b0f7604b022ff7c897c1f6fdb67246" + }, + { + "path": "commands/martin.md", + "sha256": "dd4504e59f0178b2bf373f9e74ba8f1cb3f214c03e950c86149c34c856e22b9f" + }, + { + "path": "commands/frink.md", + "sha256": "ef94a6d2632d977efed70ff6e2dbfef177d97face11bc43ba7e40618c2530bc6" + }, + { + "path": "commands/skinner.md", + "sha256": "e4699b9dd085ce86f7652045bd75e9f5971b1ec16a5d33fa24814abdd2198338" + } + ], + "dirSha256": "6a6460071ac80b0ae85267b795aeb79503ec1905345d58bfb695bbce76a3d9e6" + }, + "security": { + "scannedAt": null, + "scannerVersion": null, + "flags": [] + } +} \ No newline at end of file