Skills Directory精选自 GitHub 的开源 Skills

planning-with-filescommit a13b6be · v3.27.0SKILL.md · 任务拆分

文件化规划

用磁盘上的 task_plan.md、findings.md 和 progress.md 管理多步骤任务,中断后可恢复。

会注册多个生命周期 hook;session-catchup.py 可读取同一项目的本地会话记录,--replay 摘录需用户明确同意。

npx skills add OthmanAdi/planning-with-files --skill planning-with-files
权限
  • read-repo
  • write-files
  • shell
  • network
兼容工具
Claude Code, Codex, Cursor, Copilot, OpenCode
GitHub
27.8k
来源
社区 · Ahmad Othman Ammar Adi
状态
扫描通过
许可证
MIT

核心规则

复杂任务开始前必须先有 task_plan.md,做决定前重读计划。

执行阶段

  1. 阶段 01恢复项目状态

    先查找并复用已有计划;新任务用初始化脚本创建计划文件,不覆盖已有文件。

  2. 阶段 02先读再决定

    每次决策前重读计划;每做两步就把发现写入 findings.md。

  3. 阶段 03行动后更新

    每个阶段完成后更新 progress.md 和计划中的“下一步”,并记录所有错误。

  4. 阶段 04不重复失败

    按三次出错规则换方法,同一失败不再重试。

权限说明(据 SKILL.md 整理)

能力是否需要说明
文件写入需要在项目中创建和更新计划、发现与进度文件,不覆盖已有的计划文件。
命令执行部分需要运行技能自带的 shell/PowerShell 脚本,并注册在提交提示、工具调用、停止和压缩时触发的 hook;不执行 Markdown 中声明的命令。
网络外发不需要技能说明中没有网络上传路径。

SKILL.md 头部信息(YAML)

SKILL.md 头部信息(YAML)commit a13b6be · v3.27.0
---
name: planning-with-files
description: "Persistent file-based planning for multi-step AI-agent work. Keeps task_plan.md, findings.md, and progress.md on disk; lifecycle hooks inject selected project planning context. Automatic recovery reads project planning files only. Explicit session-catchup.py --metadata reads same-project local agent session records and emits aggregate counts only; --replay may emit bounded nonce-framed excerpts. Optional gated mode can request continuation only when the host supports it and never runs commands declared in Markdown. The skill has no network upload path. Use for research or work needing 5+ tool calls."
user-invocable: true
allowed-tools: "Read Write Edit Bash Glob Grep"
hooks:
  UserPromptSubmit:
    - hooks:
        - type: command
          command: "[ -n \"${CLAUDE_PLUGIN_ROOT:-}\" ] && exit 0; SH=\"${CLAUDE_SKILL_DIR}/scripts/skill-hook.sh\"; [ -f \"$SH\" ] || SH=$(ls \"$HOME/.claude/skills/planning-with-files/scripts/skill-hook.sh\" \"$HOME/.claude/plugins/marketplaces/planning-with-files/scripts/skill-hook.sh\" 2>/dev/null | head -1); [ -n \"$SH\" ] && [ -f \"$SH\" ] && sh \"$SH\" --event=userprompt; exit 0"
  PreToolUse:
    - matcher: "Write|Edit|Bash|Read|Glob|Grep"
      hooks:
        - type: command
          command: "[ -n \"${CLAUDE_PLUGIN_ROOT:-}\" ] && exit 0; SH=\"${CLAUDE_SKILL_DIR}/scripts/skill-hook.sh\"; [ -f \"$SH\" ] || SH=$(ls \"$HOME/.claude/skills/planning-with-files/scripts/skill-hook.sh\" \"$HOME/.claude/plugins/marketplaces/planning-with-files/scripts/skill-hook.sh\" 2>/dev/null | head -1); [ -n \"$SH\" ] && [ -f \"$SH\" ] && sh \"$SH\" --event=pretool; exit 0"
  PostToolUse:
    - matcher: "Write|Edit"
      hooks:
        - type: command
          command: "[ -n \"${CLAUDE_PLUGIN_ROOT:-}\" ] && exit 0; SH=\"${CLAUDE_SKILL_DIR}/scripts/skill-hook.sh\"; [ -f \"$SH\" ] || SH=$(ls \"$HOME/.claude/skills/planning-with-files/scripts/skill-hook.sh\" \"$HOME/.claude/plugins/marketplaces/planning-with-files/scripts/skill-hook.sh\" 2>/dev/null | head -1); [ -n \"$SH\" ] && [ -f \"$SH\" ] && sh \"$SH\" --event=posttool; exit 0"
  Stop:
    - hooks:
        - type: command
          command: "[ -n \"${CLAUDE_PLUGIN_ROOT:-}\" ] && exit 0; SH=\"${CLAUDE_SKILL_DIR}/scripts/skill-hook.sh\"; [ -f \"$SH\" ] || SH=$(ls \"$HOME/.claude/skills/planning-with-files/scripts/skill-hook.sh\" \"$HOME/.claude/plugins/marketplaces/planning-with-files/scripts/skill-hook.sh\" 2>/dev/null | head -1); [ -n \"$SH\" ] && [ -f \"$SH\" ] && sh \"$SH\" --event=stop; exit 0"
  PreCompact:
    - matcher: "*"
      hooks:
        - type: command
          command: "[ -n \"${CLAUDE_PLUGIN_ROOT:-}\" ] && exit 0; SH=\"${CLAUDE_SKILL_DIR}/scripts/skill-hook.sh\"; [ -f \"$SH\" ] || SH=$(ls \"$HOME/.claude/skills/planning-with-files/scripts/skill-hook.sh\" \"$HOME/.claude/plugins/marketplaces/planning-with-files/scripts/skill-hook.sh\" 2>/dev/null | head -1); [ -n \"$SH\" ] && [ -f \"$SH\" ] && sh \"$SH\" --event=precompact; exit 0"
metadata:
  version: "3.27.0"
---

相关技能

规则扫描无法覆盖所有风险,安装前请阅读此技能的 SKILL.md,确认权限后再使用。