ClaudeMods
☰
ZH-TW
● 0 人在線上 · 瀏覽 0 次
贊助提交作品
GitHub 儲存庫 · 發布者 ninthspace

weather

在你設定的地點,於提示列底部顯示目前天氣(天氣狀況與溫度),每 15 分鐘重新整理一次。

ninthspace@ninthspace

ninthspace/claude-code-marketplace/tree/main/weather

已翻譯

關於這個 mod

Claude Code Marketplace

Claude Code 外掛市場,提供開發工具與生產力工具。

概覽

這個市場包含引導式規劃(CPM)、以資料庫為後端的規劃工件(DPM)、筆記搜尋、PHP 程式碼智慧、JavaScript/TypeScript 程式碼簡化、Filament v5 管理後台 mockup、儲存庫中 cpm-next 待辦工作的即時檢視、快速存取 Claude 產生的檔案,以及提示列底部目前天氣的外掛。所有工具都設計成能與 Claude Code 順暢搭配。

安裝

從市場安裝(在 Claude Code 內)

# Install the marketplace
/plugin marketplace add ninthspace/claude-code-marketplace

# Install individual plugins
/plugin install noteplan@ninthspace-marketplace
/plugin install php-lsp@ninthspace-marketplace
/plugin install cpm@ninthspace-marketplace
/plugin install dpm@ninthspace-marketplace
/plugin install js-simplifier@ninthspace-marketplace
/plugin install filament-mockup@ninthspace-marketplace
/plugin install whats-next@ninthspace-marketplace
/plugin install generated-files@ninthspace-marketplace
/plugin install weather@ninthspace-marketplace

後綴是市場名稱,不是儲存庫名稱。 marketplace.json 宣告的是 ninthspace-marketplace,每個已安裝的外掛都以此作為鍵值──所以不管上方 marketplace add 那行裡儲存庫怎麼拼,cpm@claude-code-marketplace 都解析不到任何內容。

/cpm:ralph 還需要的元件──ralph-loop 分支

CPM 的自主迴圈(/cpm:ralph)本身不實作迴圈。它會寫入狀態檔案,並依賴另一個外掛提供 Stop hook。請安裝我們的版本:

/plugin marketplace add ninthspace/ralph-loop
/plugin install ralph-loop@ninthspace-ralph

這是 Anthropic 的 ralph-loop 分支 (Apache-2.0);這個專案本身是從 Daisy Hollman 的 ralph-wiggum 演變而來、持續維護的版本。分支的第一個提交是未經修改的上游外掛,因此每項變更 都能看成相對於它的差異。

有一項行為變更,也是應該優先使用這個分支的原因:Stop hook 無法讀取 transcript 時,不再刪除迴圈的狀態檔案。上游會把缺少 transcript、為尋找 assistant 記錄而執行的 grep 失敗,以及 jq 剖析錯誤視為結束執行的理由──而狀態檔案就是迴圈本身,因此那樣結束會以 0 結束,卻沒有 promise,也沒有狀態檔案,無法和已完成的執行區分。分支在這三種情況都會繼續:讀不到某一輪的輸出代表這次反覆沒有 promise,不是工作已完成。無人看管的整夜執行正是這種差異看不出來又代價高昂的情境。

CPM 可以搭配三者中的任一個──cpm/hooks/lib/ralph-hook-probe.sh 不論哪個外掛提供 hook 都能偵測,沒有任何 hook 時會發出警告。上游外掛仍然可以使用;/cpm:ralph 的開發與測試是以這個分支為準。

不要同時啟用多個。 三者都會註冊 Stop hook,兩個 hook 會在同一個工作階段觸發,而迴圈只要其中一個刪除狀態檔案就會結束。

可用的外掛

NotePlan Search (v1.0.0)

在 Claude Code 中搜尋與查詢 NotePlan 筆記

搜尋 NotePlan 內容的技能,涵蓋:

  • Notes folder - 獨立筆記
  • Calendar folder - 每日/每週/每月筆記
  • Spaces - 團隊/共用筆記(SQLite 資料庫)
  • iCloud - 透過 iCloud Drive 同步時可用

結果會依最近修改時間由新到舊排序。

快速開始:

# Search for a term
/noteplan coffee

# List all Spaces notes
/noteplan --list --spaces

# Fetch full note by ID
/noteplan --get UUID

# Search with date filters
/noteplan meeting --after 2025-01-01

# Natural language queries
/noteplan find me everything about project planning

主要功能:

  • 跨所有 NotePlan 來源的全文搜尋
  • 日期篩選(--after、--before)
  • 供 AI 工具使用的 JSON 輸出
  • 直接使用 noteplan:// URL 在應用程式中開啟筆記
  • 預設排除 @Templates、@Trash、@Archive(使用 --all 可包含)

需求:

  • 安裝 NotePlan 3 的 macOS
  • Python 3

查看完整文件


PHP LSP (v1.0.0)

為 Claude Code 提供 PHP 語意程式碼智慧

透過 intelephense 和 lsp-mcp-server 橋接,為 Claude Code 的 PHP 檔案加入 24 個 LSP 工具。

功能:

  • 跳至定義、尋找參照、尋找實作
  • 懸浮資訊(型別簽名、文件)
  • 程式碼補全與簽名輔助
  • 診斷(錯誤、警告),支援單一檔案和整個專案
  • 在整個程式碼庫中安全重新命名
  • 程式碼動作(快速修正、重構)
  • 呼叫階層與型別階層
  • 檔案分析(匯入、匯出、相關檔案)
  • 文件格式化

快速開始:

# One-time setup (installs intelephense + lsp-mcp-server, configures project)
/php-lsp:setup

# Restart Claude Code — LSP auto-starts on first use

# Check everything is working
/php-lsp:status

需求:

  • Node.js >= 18
  • Git

查看完整文件


Claude Planning Method (v3.12.1)

面向 Claude Code 的引導式規劃,支援多視角 party mode 與聚焦式諮詢

透過引導式對話完成結構化探索、產品構思、架構探索、規格說明、工作拆分、任務執行、回顧和方向修正。包含 party mode──由具名專業角色(PM、Architect、Developer、UX Designer、QA、DevOps、Tech Writer、Scrum Master)組成的多代理討論,會權衡取捨並找出盲點──以及 consult mode,用於聚焦的一對一專家對話,成員可動態加入。靈感來自 BMAD-METHOD。

v3 針對 Opus 5 及更新版本調校:所有技能都使用正向語氣的指令、明確的停止條件、以結果為導向的操作指引,以及更精簡的 token 用量。

組成流水線的二十二項技能:

| Skill | Purpose | Output | |-------|---------|--------| | /cpm:party | 多視角角色參與的討論 | 討論摘要 + 可選的流水線交接 | | /cpm:consult | 與選定專家進行聚焦的一對一諮詢 | docs/discussions/{nn}-discussion-{slug}.md | | /cpm:discover | 引導式問題探索 | docs/plans/01-plan-{slug}.md | | /cpm:brief | 產品構思──願景、功能、使用者旅程 | docs/briefs/01-brief-{slug}.md | | /cpm:architect | 架構探索──包含取捨的 ADR | docs/architecture/01-adr-{slug}.md | | /cpm:spec | 需求與架構規格說明 | docs/specifications/01-spec-{slug}.md | | /cpm:epics | 拆分為史詩文件 | docs/epics/{parent}-{seq}-epic-{slug}.md + 覆蓋矩陣 | | /cpm:do | 依驗收標準執行任務 | 更新後的史詩文件 + 已實作程式碼 | | /cpm:ralph | 自主執行──一組史詩,或從頭到尾執行整份規格 | Ralph 迴圈命令 + 執行記錄 | | /cpm:review | 由角色參與的對抗式審查 | docs/reviews/{nn}-review-{slug}.md + 可選自動修正 | | /cpm:audit | 從九個面向獨立審查程式碼庫健康狀況 | docs/audits/{nn}-audit-{slug}.md | | /cpm:inspect | 變更集做了什麼,以及它在儲存庫中的位置 | 暫時輸出(+ 可選已發佈工件) | | /cpm:retro | 已完成工作的輕量回顧 | docs/retros/01-retro-{slug}.md | | /cpm:pivot | 方向修正──修改任意規劃工件 | 精準編輯的文件 + 向下游連鎖更新 | | /cpm:present | 面向受眾的工件轉換 | docs/communications/{nn}-{format}-{slug}.md(+ 可選 HTML,+ 可選已發佈工件) | | /cpm:templates | 模板可發現性與腳手架 | 模板預覽 + docs/templates/ 中的覆寫檔案 | | /cpm:library | 匯入供所有技能使用的參考文件 | 含 YAML front-matter 的 docs/library/{name}.md | | /cpm:archive | 封存已完成或過時的規劃文件 | 檔案移至 docs/archive/ | | /cpm:quick | 針對小型變更的輕量執行 | docs/quick/{nn}-quick-{slug}-spec.md | | /cpm:status | 專案狀態偵察與下一步建議 | 暫時輸出(僅 stdout) | | /cpm:clean | 依需求清理遺留的工作階段狀態檔案 | 無(刪除檔案並回報刪除內容) | | /cpm:artifact | 將已發佈工件登記到產生它的工作 | docs/artifacts/index.md + 相關文件中的反向連結 |

快速開始:

# Brainstorm with your team of agent personas
/cpm:party should we use a monorepo or separate repos?

# Focused consultation with one expert
/cpm:consult Margot

# Full pipeline: discover → brief → architect → spec → epics → do → retro
/cpm:discover build a customer portal for our booking system
/cpm:brief docs/plans/01-plan-customer-portal.md
/cpm:architect docs/briefs/01-brief-customer-portal.md
/cpm:spec docs/briefs/01-brief-customer-portal.md
/cpm:epics docs/specifications/01-spec-customer-portal.md
/cpm:do
/cpm:retro

# Import reference docs for skills to use as context
/cpm:library docs/architecture-decisions.md

# Review planning artifacts before or after execution
/cpm:review docs/epics/01-epic-customer-portal.md

# Course correct mid-flow
/cpm:pivot docs/specifications/01-spec-customer-portal.md

# Transform artifacts for stakeholders
/cpm:present docs/specifications/01-spec-customer-portal.md

# Explore and customise templates
/cpm:templates preview brief

# Clean up completed artefacts
/cpm:archive

# Hand a whole spec to the autonomous loop — epics first, then the work
/cpm:ralph docs/specifications/01-spec-customer-portal.md

# Small change? Skip the full pipeline
/cpm:quick add a --verbose flag to the deploy script

# Check project status and get next-step recommendations
/cpm:status

# Clean up leftover artefacts
/cpm:clean

# Register a published artifact against the work that produced it
/cpm:artifact https://claude.ai/code/artifact/... auth flow explorer, from spec 12

# Or jump to any step independently
/cpm:spec I need a REST API for inventory management
/cpm:do 3  # work on a specific task

主要功能:

  • Party mode──具名代理角色討論、辯論,並進行建設性意見不合
  • Consult mode──聚焦的一對一專家對話,支援邀請/解散和負責人移交
  • 把多視角洞察融入 discover 與 spec 階段
  • 產品構思──在進入需求前探索願景、價值主張與使用者旅程
  • 架構探索──引導式 ADR,分析取捨並整理相依關係
  • 是引導式對話,不是表單──會接續你的回答
  • 一次處理一個主題,由使用者控制是否推進
  • 依複雜度調整深度──跳過不增加價值的階段
  • 使用 MoSCoW 方法為需求排定優先順序
  • 帶有理由與替代方案的架構決策(參照現有 ADR)
  • 規格需求可追溯性──故事連回它們滿足的需求
  • 規模合適、具備驗收條件和相依關係的史詩與故事
  • 貫穿流水線的測試脈絡──規格定義測試方法標籤,史詩將其傳遞到條件並產生測試任務,do 在驗證門中發現並執行測試
  • 帶有驗收條件驗證和 ADR 感知的任務執行迴圈
  • 測試執行器探索──依專案設定檔按慣例偵測,每個工作階段快取
  • 史詩層級驗證──根據來源規格檢查已完成的史詩
  • 規格覆蓋彙整──一個命令把每個史詩的覆蓋矩陣合併回規格需求,回答「這份規格是否已完整交付?」,先列出沒有追蹤關係的需求
  • 自主規格交付──將 /cpm:ralph 指向規格,它會產生

安裝

請先查看作者 README,確認 marketplace 與外掛名稱;指令可能隨儲存庫結構而變動。

claude plugin marketplace add ninthspace/claude-code-marketplace
claude plugin install weather
原文 / README

Claude Code Marketplace

A Claude Code plugin marketplace providing development tools and productivity utilities.

Overview

This marketplace contains plugins for facilitated planning (CPM), database-backed planning artefacts (DPM), note searching, PHP code intelligence, JavaScript/TypeScript code simplification, Filament v5 admin mockups, a live view of the cpm-next work left in a repository, quick access to the files Claude generates, and the current weather in the prompt footer. All tools are designed to work seamlessly with Claude Code.

Installation

Install from Marketplace (inside Claude Code)

# Install the marketplace
/plugin marketplace add ninthspace/claude-code-marketplace

# Install individual plugins
/plugin install noteplan@ninthspace-marketplace
/plugin install php-lsp@ninthspace-marketplace
/plugin install cpm@ninthspace-marketplace
/plugin install dpm@ninthspace-marketplace
/plugin install js-simplifier@ninthspace-marketplace
/plugin install filament-mockup@ninthspace-marketplace
/plugin install whats-next@ninthspace-marketplace
/plugin install generated-files@ninthspace-marketplace
/plugin install weather@ninthspace-marketplace

The suffix is the marketplace's name, not the repository's. marketplace.json declares ninthspace-marketplace, and that is what every installed plugin is keyed by — so cpm@claude-code-marketplace resolves to nothing however the repository is spelled in the marketplace add line above it.

Also needed for /cpm:ralph — the ralph-loop fork

CPM's autonomous loop (/cpm:ralph) does not implement the loop itself. It writes a state file and relies on a Stop hook supplied by a separate plugin. Install ours:

/plugin marketplace add ninthspace/ralph-loop
/plugin install ralph-loop@ninthspace-ralph

This is a fork of Anthropic's ralph-loop (Apache-2.0), which is itself the maintained line descended from Daisy Hollman's ralph-wiggum. The fork's first commit is the upstream plugin unmodified, so every change is visible as a diff against it.

One behavioural change, and it is the reason to prefer the fork: the Stop hook no longer deletes the loop's state file when it cannot read the transcript. Upstream treats a missing transcript, a failed grep for assistant records, and a jq parse error as reasons to end the run — and the state file is the loop, so ending it that way exits 0 with no promise and no state file, which is indistinguishable from a completed run. The fork continues on all three: failing to read a turn's output means no promise this iteration, not the work is finished. An unattended overnight run is precisely where that difference is invisible and expensive.

CPM works with any of the three — cpm/hooks/lib/ralph-hook-probe.sh detects the hook whichever plugin provides it, and warns when none is present. The upstream plugins remain usable; the fork is what /cpm:ralph is developed and tested against.

Do not enable more than one at a time. All three register a Stop hook, both fire on the same session, and the state file only has to be deleted by one of them for the loop to end.

Available Plugins

NotePlan Search (v1.0.0)

Search and query NotePlan notes from Claude Code

A skill for searching NotePlan content across:

  • Notes folder - Standalone notes
  • Calendar folder - Daily/weekly/monthly notes
  • Spaces - Team/shared notes (SQLite database)
  • iCloud - If syncing via iCloud Drive

Results are sorted by most recently modified first.

Quick Start:

# Search for a term
/noteplan coffee

# List all Spaces notes
/noteplan --list --spaces

# Fetch full note by ID
/noteplan --get UUID

# Search with date filters
/noteplan meeting --after 2025-01-01

# Natural language queries
/noteplan find me everything about project planning

Key Features:

  • Full-text search across all NotePlan sources
  • Date filtering (--after, --before)
  • JSON output for AI tools
  • Direct noteplan:// URLs to open notes in the app
  • Excludes @Templates, @Trash, @Archive by default (use --all to include)

Requirements:

  • macOS with NotePlan 3 installed
  • Python 3

View full documentation


PHP LSP (v1.0.0)

PHP semantic code intelligence for Claude Code

Adds 24 LSP tools to Claude Code for PHP files via intelephense and the lsp-mcp-server bridge.

Capabilities:

  • Go-to-definition, find references, find implementations
  • Hover info (type signatures, documentation)
  • Code completion and signature help
  • Diagnostics (errors, warnings) per file and project-wide
  • Safe rename across entire codebase
  • Code actions (quick fixes, refactoring)
  • Call hierarchy and type hierarchy
  • File analysis (imports, exports, related files)
  • Document formatting

Quick Start:

# One-time setup (installs intelephense + lsp-mcp-server, configures project)
/php-lsp:setup

# Restart Claude Code — LSP auto-starts on first use

# Check everything is working
/php-lsp:status

Requirements:

  • Node.js >= 18
  • Git

View full documentation


Claude Planning Method (v3.12.1)

Facilitated planning with multi-perspective party mode and focused consultation for Claude Code

Structured discovery, product ideation, architecture exploration, specification, work breakdown, task execution, retrospectives, and course correction through guided conversation. Includes party mode — a multi-agent discussion where named specialist personas (PM, Architect, Developer, UX Designer, QA, DevOps, Tech Writer, Scrum Master) debate trade-offs and surface blind spots — and consult mode for focused one-to-one expert dialogue with dynamic membership. Inspired by the BMAD-METHOD.

v3 is tuned for Opus 5 and later: all skills use positive-voice instructions, explicit stop criteria, outcome-oriented procedural guidance, and a reduced token footprint.

Twenty-two skills forming a pipeline:

| Skill | Purpose | Output | |-------|---------|--------| | /cpm:party | Multi-perspective discussion with agent personas | Discussion summary + optional pipeline handoff | | /cpm:consult | Focused one-to-one consultation with a chosen expert | docs/discussions/{nn}-discussion-{slug}.md | | /cpm:discover | Facilitated problem discovery | docs/plans/01-plan-{slug}.md | | /cpm:brief | Product ideation — vision, features, user journeys | docs/briefs/01-brief-{slug}.md | | /cpm:architect | Architecture exploration — ADRs with trade-offs | docs/architecture/01-adr-{slug}.md | | /cpm:spec | Requirements & architecture specification | docs/specifications/01-spec-{slug}.md | | /cpm:epics | Work breakdown into epic documents | docs/epics/{parent}-{seq}-epic-{slug}.md + coverage matrix | | /cpm:do | Task execution with acceptance criteria | Updated epic doc + implemented code | | /cpm:ralph | Autonomous execution — a set of epics, or a whole spec end to end | Ralph loop command + execution log | | /cpm:review | Adversarial review with agent personas | docs/reviews/{nn}-review-{slug}.md + optional autofix | | /cpm:audit | Independent codebase health audit across nine dimensions | docs/audits/{nn}-audit-{slug}.md | | /cpm:inspect | What a change set did, and where it sits in the repo | Ephemeral (+ optional published artifact) | | /cpm:retro | Lightweight retrospective from completed work | docs/retros/01-retro-{slug}.md | | /cpm:pivot | Course correction — amend any planning artefact | Surgically edited docs + cascaded downstream updates | | /cpm:present | Audience-aware artifact transformation | docs/communications/{nn}-{format}-{slug}.md (+ optional HTML, + optional published artifact) | | /cpm:templates | Template discoverability & scaffolding | Template previews + override files at docs/templates/ | | /cpm:library | Import reference docs for all skills to use | docs/library/{name}.md with YAML front-matter | | /cpm:archive | Archive completed or stale planning documents | Files moved to docs/archive/ | | /cpm:quick | Lightweight execution for small changes | docs/quick/{nn}-quick-{slug}-spec.md | | /cpm:status | Project status reconnaissance and next-step recommendations | Ephemeral (stdout only) | | /cpm:clean | On-demand cleanup of leftover session-state files | None (removes files, reports what was deleted) | | /cpm:artifact | Register published artifacts against the work that produced them | docs/artifacts/index.md + backlinks in associated documents |

Quick Start:

# Brainstorm with your team of agent personas
/cpm:party should we use a monorepo or separate repos?

# Focused consultation with one expert
/cpm:consult Margot

# Full pipeline: discover → brief → architect → spec → epics → do → retro
/cpm:discover build a customer portal for our booking system
/cpm:brief docs/plans/01-plan-customer-portal.md
/cpm:architect docs/briefs/01-brief-customer-portal.md
/cpm:spec docs/briefs/01-brief-customer-portal.md
/cpm:epics docs/specifications/01-spec-customer-portal.md
/cpm:do
/cpm:retro

# Import reference docs for skills to use as context
/cpm:library docs/architecture-decisions.md

# Review planning artifacts before or after execution
/cpm:review docs/epics/01-epic-customer-portal.md

# Course correct mid-flow
/cpm:pivot docs/specifications/01-spec-customer-portal.md

# Transform artifacts for stakeholders
/cpm:present docs/specifications/01-spec-customer-portal.md

# Explore and customise templates
/cpm:templates preview brief

# Clean up completed artefacts
/cpm:archive

# Hand a whole spec to the autonomous loop — epics first, then the work
/cpm:ralph docs/specifications/01-spec-customer-portal.md

# Small change? Skip the full pipeline
/cpm:quick add a --verbose flag to the deploy script

# Check project status and get next-step recommendations
/cpm:status

# Clean up leftover session-state files on demand
/cpm:clean

# Register a published artifact against the work that produced it
/cpm:artifact https://claude.ai/code/artifact/... auth flow explorer, from spec 12

# Or jump to any step independently
/cpm:spec I need a REST API for inventory management
/cpm:do 3  # work on a specific task

Key Features:

  • Party mode — named agent personas discuss, debate, and disagree constructively
  • Consult mode — focused one-to-one expert dialogue with invite/dismiss and lead transfer
  • Multi-perspective insights woven into discover and spec phases
  • Product ideation — explore vision, value propositions, and user journeys before requirements
  • Architecture exploration — facilitated ADRs with trade-off analysis and dependency mapping
  • Facilitated conversations, not forms — builds on your answers
  • One topic at a time with user-gated progression
  • Scales depth to complexity — skips phases that don't add value
  • MoSCoW prioritisation for requirements
  • Architecture decisions with rationale and alternatives (references existing ADRs)
  • Spec requirement traceability — stories link back to the requirements they satisfy
  • Right-sized epics and stories with acceptance criteria and dependencies
  • Testing thread through the pipeline — spec defines test approach tags, epics propagate them to criteria and generate testing tasks, do discovers and runs tests in verification gates
  • Task execution loop with acceptance criteria verification and ADR awareness
  • Test runner discovery — convention-based detection from project config files, cached per session
  • Epic-level verification — completed epics are checked against their source spec
  • Spec coverage roll-up — one command joins every epic's coverage matrix back to the spec's requirements and answers "is this spec fully delivered?", naming untraced requirements first
  • Autonomous spec delivery — point /cpm:ralph at a spec and it generates the epics, then works them; the loop stops on the roll-up script's verdict, not on its own judgement
  • Spec, ADR, and test coverage compliance review dimensions
  • Lightweight retros with testing gap analysis that feed forward into the next planning cycle
  • Adversarial review — agent personas challenge assumptions, spot gaps, and flag risks with optional autofix
  • Independent codebase audit — nine dimensions of code health with file:line citations, prioritised findings, and handoff to spec/library/quick
  • Course correction — surgically amend any artefact with cascading downstream updates (5 artifact types)
  • Audience-aware artifact transformation — present planning artifacts to any audience in any format
  • Two-tier template system — structural (fixed data contracts) and presentational (overridable)
  • Project reference library — import docs that skills auto-discover and use as context
  • Archive — clean up completed artefacts with staleness heuristics and chain detection
  • Project status reconnaissance — scan artifacts and git history, produce a narrative briefing with next steps
  • Customisable agent roster — override default personas per project
  • Compaction resilience — seamlessly survives Claude Code context compaction, with /cpm:clean for on-demand cleanup of leftover session-state files

Companion tool — cpm board: a standalone terminal UI (cpm/tools/board/) that shows the CPM status of every project you register — a three-column Projects → Epics → Stories browser — and launches the right /cpm:* session for each without leaving the board. It reads each project's docs/ planning artifacts read-only. See the board README.

/cpm:ralph needs a Stop hook, and CPM does not ship one. The autonomous loop is driven by a Stop hook from a separate plugin; every other skill works without one. Install:

/plugin marketplace add ninthspace/ralph-loop
/plugin install ralph-loop@ninthspace-ralph

ralph-loop@ninthspace-ralph 1.2.0 or later is the supported configuration — it is what CPM's documented loop behaviour is written against. The loop also runs on ralph-loop@claude-plugins-official and ralph-wiggum@claude-code-plugins, and /cpm:ralph probes whichever hook is installed rather than checking a name or a version. What you lose below 1.2.0 is not an error message: an unreadable transcript ends the run silently and looks like a clean finish, every <promise> in the transcript is the hook's own reminder rather than the model's, and active: false in the loop's state file does nothing at all. See the fork's README for what each change does.

Thinking about DPM instead? The two are the same pipeline over different substrates, and a repository can only sensibly use one. Moving to DPM from CPM covers what carries across, what does not, and the one move to make before DPM's first publish — CPM can run it with you while you still have both installed.

View full documentation | Interactive Training Guide


DPM — Data-Modelled Planning Method (v0.8.0)

Planning artefacts as database rows, with markdown as a generated projection

CPM's pipeline with a different substrate. Every artefact — spec, epic, story, requirement, coverage row — is a row with typed columns, and every cross-artefact reference is a foreign key rather than a path in prose. The markdown under docs/ is a generated, one-way projection: it is committed so pull requests still show a readable diff, but it is never read back. Skills write exclusively through typed MCP tools, so no skill contains SQL and nothing parses prose.

What the substrate buys:

  • Referential integrity — a story cannot point at an epic that does not exist, and a renumber updates every reference by construction rather than by search-and-replace
  • Queryable state — "which requirements have no covering criterion" is a query, not a grep across four hundred files
  • A guard that cannot be fooled — a pre-commit hook regenerates both artefacts and refuses a commit that disagrees with the database, so a hand-edit to a generated file is caught rather than silently overwritten at the next render
  • Restorable from text — .dpm/dpm.sql is the committed form; the binary database is derived and gitignored

Coming from CPM? Read MIGRATION.md before you run anything in that repository. There is no importer and there will not be one — DPM cannot read prose, which is the point of it — so the move is a short list of things worth carrying by hand and a longer list to leave alone. One step has to happen first: DPM's first publish offers to delete files it did not write, and your CPM corpus has to be out of its reach before then. CPM can also walk you through the whole thing, which is worth doing while you still have both systems installed.

Quick Start:

# After installing, in each repository DPM keeps artefacts in — check the path is free first,
# because DPM's hook replaces an existing pre-commit rather than running after it:
git config core.hooksPath && ls -l .git/hooks/pre-commit   # both should come back empty

# (an absolute <plugin path> — a symlink resolves its target from .git/hooks/)
ln -s <plugin path>/dpm/hooks/pre-commit .git/hooks/pre-commit

# Then, after any skill run that wrote something:
/dpm:publish

If either check came back with something, the DPM README's When something else owns the hook covers it — a stale link from a previous release, a hook manager that has moved the directory, the pre-commit framework, or a hook of your own to run alongside.

Re-make that symlink after each DPM upgrade, with ln -sf since the old link is in the way. A release installs beside the previous one and re-points nothing, so the link keeps running the version you installed it from. The guard notices — it refuses a database whose schema is newer than it understands, rather than reporting on a comparison it can only half make — but re-linking is yours to do.

A link that has gone missing is the case nothing reports. .git/hooks/ is not tracked, so the link does not survive a re-clone or anything that rewrites the directory — and git skips a hook it cannot find without a warning and without failing the commit. Unlike the stale-link case above, there is no refusal to notice: commits simply go in unchecked. Since 0.5.5 the first tool call of a session looks for the hook and writes one line to stderr when there is nothing there; it warns on absence only, and stays quiet outside a repository, in a linked worktree, and where core.hooksPath has moved the hooks directory. The DPM README's First run has the detail, and two shell functions that fold the manual checks into the linking commands.

The database is created on the first tool call rather than at launch, so a session in a directory that does not use DPM leaves no .dpm/ behind. When one is created, .dpm/.gitignore is written before the database file exists — keeping the binary out of your commits is not a step you perform. On a fresh clone the first tool call finds the committed .dpm/dpm.sql and builds the database from it.

Requires: Node 22.5.0 or later. DPM reaches SQLite through node:sqlite in the standard library — no native module, no node-gyp, no build step.

Companion tool — DPM board: a standalone terminal UI (dpm/tools/board/) showing the state of every project you register — a three-column Projects → Epics → Stories browser — and launching the right /dpm:* session for each without leaving the board. Unlike CPM's board it reads nothing off disk: it is an MCP client, so a blocked epic names its blocker from a dependency row instead of having one guessed from a **Blocked by** line, and it can answer questions a markdown corpus cannot — Ctrl+G lists every requirement no coverage row traces, and a per-project badge carries what check_integrity reported. Servers are spawned read-only, so observing a project leaves it byte-identical. See the board README.

Status: in use, still settling. The skill corpus, the tool surface, the database lifecycle and the board are in place — specs 47-spec-dpm-sqlite-persistence.md, 48-spec-dpm-board.md and 49-spec-dpm-database-lifecycle.md under docs/cpm/specifications/, with the work broken down across docs/cpm/epics/47-*, 48-* and 49-*. Those paths carry cpm/ because this repository has itself migrated from CPM to DPM: the CPM-era planning corpus is parked under docs/cpm/, and docs/ is now DPM's generated output.

View full documentation | Moving to DPM from CPM


JS/TS Simplifier (v1.0.0)

Simplify and improve JavaScript and TypeScript code across an entire codebase

A skill that scans all JS/TS files (or a configurable subset) and applies clarity, consistency, and maintainability improvements while preserving exact functionality. Unlike targeted simplification of recently changed files, this skill works across the whole codebase.

Three parallel analysis agents:

  • Modern Syntax — ES2015+ and ES2020+ upgrades (optional chaining, nullish coalescing, async/await, const/let)
  • Code Quality — Dead code removal, conditional simplification, naming improvements, error handling
  • Structure & Reuse — DRY violations, module organisation, function complexity, async patterns

Quick Start:

# Simplify all JS/TS files in the project
/js-simplify

# Narrow to a specific directory
/js-simplify src/

# Only git-modified files
/js-simplify only changed

# Focus on a specific pattern
/js-simplify focus on async patterns

Key Features:

  • Parallel three-agent analysis for comprehensive coverage
  • Respects project conventions (CLAUDE.md, ESLint, Prettier, tsconfig)
  • Configurable scope — all files, specific directories, globs, or git-changed only
  • Safety-first — never changes what the code does, only how it does it
  • Flags ambiguous cases for manual review rather than auto-applying

Supported File Types:

  • .js, .mjs, .cjs, .jsx, .ts, .tsx

View full documentation

Filament Mockup (v1.1.0)

Build high-fidelity Filament v5 admin mockups for stakeholder sign-off

A skill that turns a product brief or spec into a single self-contained HTML file that looks pixel-accurate to a real Filament v5 admin panel — clickable enough to walk a stakeholder through every screen and flow, and throwaway by design (the real Filament build regenerates all of it natively). Mockups use the real captured Filament theme CSS and Filament's exact fi-* markup, so what stakeholders sign off on is what gets built. Not for production Filament code or customer-facing/front-end mockups.

Workflow:

  • Capture — lift the compiled theme CSS and design tokens from a real Filament v5 panel
  • Inventory — build an FR → screen matrix so every element traces back to a numbered functional requirement
  • Build — reuse Filament's exact fi-* grammar; mark genuinely custom components with the mk- namespace
  • Verify — measure with Playwright rather than eyeballing, then sign off with a coverage audit
  • Hand off — write the durable routing table (docs/mockups/surface-routing.md) so the downstream builder mockup-to-filament knows which surfaces it owns (works stand-alone — no brief-to-mockups prerequisite)

Quick Start:

# Turn a brief/spec into clickable admin screens
create a Filament mockup from docs/specifications/05-spec-admin-panel.md

# Or describe it directly
mock up the admin panel for this PRD

Key Features:

  • Single self-contained HTML file — opens by file://, zero environment to stand up
  • Maximum fidelity to Filament's real design language (captured theme, Albert Sans, standard layouts)
  • Every element traces to a functional requirement — invented UI is flagged, not silently added
  • Visible mk- vs fi-* boundary distinguishes mockup scaffolding from real Filament
  • Bundled scaffold, capture/verify scripts, and an fi-* grammar cheat-sheet
  • Part of the mockup→build family — a producer whose output the builders consume (mockup-to-filament for Filament, mockup-to-blade for bespoke); emits a routing handoff naming the lane per surface

Requires: Node + Playwright for the capture/verify scripts (npm i -D playwright && npx playwright install chromium).

View full documentation

What's Next (v0.2.2)

A live pane and band showing the cpm-next work left in the current repository

A Claude Code mod (a plugin of function hooks). It reads the docs/epics/ and docs/specifications/ folders of the repository the session runs in — or the nearest folder above it that has either — and shows every story not yet Complete, in the order to build them, and every spec no epic has been planned from yet. It reads the files directly, with no model calls, so it stays current as /cpm-next:do or you edit the epics.

What it shows:

  • Pane — the story in progress and its next task, every remaining story in order (doing, ready, or after Story 1 / after Epic …), and each open epic's story count. Opens by itself in a repository with work left when the terminal is at least 144 columns wide; /next opens it at any width.
  • Specs without epics — each spec in docs/specifications/ that no epic was planned from, in number order. A spec counts as planned when an epic is numbered after it (03-spec-… → 03-01-epic-…) or an epic names its file in **Source spec**; a spec whose own **Status** is Complete, Superseded or Withdrawn is left out, as is a withdrawal notice (a **Withdrawn** or **Superseded by** field, or WITHDRAWN / SUPERSEDED in its title).
  • Band — one line above the prompt with the next story, its next task, and how many stories are left; with no stories left, the first spec to plan.
  • Next steps — an Ask Claude button (hotkey a) that asks Sonnet for a short note on what to do next, from the ordered list and the first two stories in full. The note is kept per repository across sessions and dimmed once the epics change after it was written.

Order of execution: stories already In Progress first; then the other stories of epics under way (the epic's own **Status** is In Progress, or one of its stories is); then everything else. Within each group, repeatedly, the ready story with the lowest epic number and story number, treating each as done before choosing the next. So working on a higher-numbered epic out of order moves it to the top once its Status says In Progress. A story is ready when everything its own **Blocked by** and its epic's **Blocked by** name is Complete; epics in docs/archive/epics/ count when resolving those dependencies. Stories whose dependencies can never be met (an unknown epic, a cycle) are listed last.

Quick Start:

/plugin install whats-next@ninthspace-marketplace
/reload-plugins

# Open the pane and print the ordered list into the conversation
/next

Reads: the cpm-next epic format (cpm-next/shared/artifacts.md) — **Status**, **Blocked by**, **Story** and **Task** fields, read case-insensitively, with Done read as Complete. Superseded and Withdrawn epics are skipped.

Develop: claude plugin validate whats-next and claude plugin test whats-next. To run the working tree instead of the installed release, start Claude Code with --plugin-dir whats-next (and uninstall the release, or both draw).

Generated Files (v0.1.1)

A pane listing the files Claude generated this session, each with an Open button

A Claude Code mod (a plugin of function hooks). Skills such as code-to-uml, filament-mockup and the md2docx wrapper write HTML, Office and image files, often into the session scratchpad; this pane collects them so they can be opened without finding the path.

What it records: files with the extensions .html .htm .svg .png .jpg .jpeg .gif .webp .docx .xlsx .pptx .pdf that are

  • written or edited with the Write or Edit tools, or
  • named in a Bash command and changed while it ran (a leading cd <dir> && sets the folder relative paths resolve against). For md2docx and pandoc runs, the .docx beside each .md named is checked too, since md2docx writes there by default.

What it shows: a "Files" pane, newest first, up to 30 files: each file's name and folder with Open (hotkeys 1–9, macOS open, the default app) and Reveal (shows it in Finder), and a Clear button. The pane opens by itself when the first file is recorded, where the terminal is at least 144 columns wide; /files opens it at any width and prints the list into the conversation. The list covers the current session only.

Quick Start:

/plugin install generated-files@ninthspace-marketplace
/reload-plugins

/files

Requires: macOS (open).

Develop: claude plugin validate generated-files and claude plugin test generated-files.

Weather (v0.1.2)

The current weather for a place you set, in the prompt footer

A Claude Code mod (a plugin of function hooks). Shows the condition and temperature, e.g. ☁️ Overcast 18°C · Inverness, dimmed at the right-hand end of the footer beside the mode labels. Data comes from Open-Meteo (no API key), refreshed every 15 minutes; if a refresh fails, the last reading stays.

Location: the plugin's Location row in /config, default Inverness, GB. A trailing two-letter country code narrows the search: a bare Inverness finds a US Inverness first. Each location is geocoded once and remembered across sessions.

When it fails: with no reading yet, the footer shows weather: <reason> (for example forecast HTTP 503). /weather refreshes at once and prints the reading, or why the refresh failed.

Quick Start:

/plugin install weather@ninthspace-marketplace
/reload-plugins

Develop: claude plugin validate weather and claude plugin test weather.

Removing Plugins (when in Claude Code)

# Uninstall individual plugins
/plugin uninstall noteplan@ninthspace-marketplace
/plugin uninstall php-lsp@ninthspace-marketplace
/plugin uninstall cpm@ninthspace-marketplace
/plugin uninstall dpm@ninthspace-marketplace
/plugin uninstall js-simplifier@ninthspace-marketplace
/plugin uninstall filament-mockup@ninthspace-marketplace
/plugin uninstall whats-next@ninthspace-marketplace
/plugin uninstall generated-files@ninthspace-marketplace
/plugin uninstall weather@ninthspace-marketplace

# Remove the entire marketplace
/plugin marketplace remove ninthspace-marketplace

License

MIT - See LICENSE for details

Contributing

Contributions welcome! Please:

  1. Follow the existing plugin structure
  2. Include comprehensive documentation
  3. Add tests where applicable
  4. Update the marketplace manifest
  5. Submit a pull request

Support

For issues or questions:

Changelog

See individual plugin CHANGELOG.md files for version history.

Author

Chris Aves

Links

更多類似作品