一键导入
make-plans
Workflow to transform vague ideas into validated designs and stepped implementation plans. Use only when user instructs or other skill references.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Workflow to transform vague ideas into validated designs and stepped implementation plans. Use only when user instructs or other skill references.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | make-plans |
| description | Workflow to transform vague ideas into validated designs and stepped implementation plans. Use only when user instructs or other skill references. |
Every feature request / refactor plan, regardless of perceived simplicity, must pass through this workflow. Shortcuts cause unexamined assumptions and wasted work. Do not edit code.
chore sub-project.plans/.Design the plan in detail in logical sections (e.g., Architecture, Core Components, Data Flow, Error Handling, Testing Strategy). Do not present raw code or interface. Repeat the following sub-steps for each section until all finished and clear.
You MUST use interview-user skill and ask about the requested change before coming up with a design, including all the nuances that are underspecified.
Deep reason about the most simple, performant, and maintainable way to implement the section. Section design principles:
Elaborate to the user on the section design, scale section depth to complexity (a few sentences for straightforward parts, more detail for nuanced logic). Request explicit user approval for this section.
If the user requests changes, revise the section, ask for approval again before proceeding. If the user approves, progress to the next section.
# <!-- feature name --> Plan
## Context
**Source**: <!-- what mandates the change, e.g., change in blueprint, a bug, user's requirement -->
<!--
List touched blueprint documents and a detailed synthesis what change is proposed by it if source is blueprint:
- elaborate repro and root cause if source is a bug
- make your context reasonable for other sources
-->
## Current Implementation
<!-- current state -->
## Target Implementation
<!-- proposed changes -->
## Files and Changes in Public Interface
<!--
**you MUST inspect source files and point to specific file paths and what to change in detail**:
- for creating a new file, you must list the proposed exports in this file
- for modifying a file, if the modification is huge, you must list the proposed final state of the file's export interface; if only small changes, list changed exports
- for meta changes (adding / deleting a dep), include in `Meta` section
- explicitly list files to delete or move
- if proposed change includes classes, you must list all public methods / properties into interfaces
- do not list test files here, tests go Testing section
Example:
-->
> Below are the canonical final export interface for each file. Refactor the file to align with this shape and remove everything redundant. Private helpers and methods not restricted. <!-- include this sentence -->
### Meta
- Install `openai` as dev dependency.
- Remove `lodash-es` dependency.
- <!-- skip this section if no meta change -->
### Create `src/foo.ts`
```TypeScript <!- use code block for miltiline code ->
export type APIResponse = {
status: string
};
```
- type definition for the API
`export function ping(url: string): boolean;`
- ping the URL and return connectivity
- <!-- detailed explanation if needed -->
`export function alert(severity: 'warn' | 'error', data: unknown): void;`
- <!-- explanation -->
### Modify `src/bar.ts`
`export function getUser(): User;`
- <!-- explanation, if no change to this export, say "keep original" -->
```TypeScript
export class User {
constructor(info: { email: string, password: string });
getPasswordHash(): string;
getOrders(): Array<Order>;
}
```
The class for a user entity.
`getPasswordHash()`
- <!-- explanation -->
`getOrders()`
- <!-- explanation -->
### Modify `src/abc.ts`
`export function shutdown(): void;`
- <!-- explanation -->
## Testing <!-- skip if no testing possible -->
<!--
Specify test files and test cases to add:
- use flat top-level `test()` inside test files instead of nested `describe()` and `it()`
- for each test case, specify what behavior of what export from which file are tested
Example:
-->
### `test/foo.test.ts`
Case `alert should be sent to the API`
- tested interface:
- `src/foo.test.ts` - `export function alert`
- `src/foo.test.ts` - `export function ping`
- expected behavior: simulated API ping success and alert sent.
Case `recoverPassword should reject when user does not exist`
TBD, TODO, handle later, or vague instructions. Every change must explicitly state what to do, where to do it, and what the expected outcome is.plans/<feature-name>.md (create folder if not present).Standard workflow to implement a plan. Use only when user instructs or other skill references.
Manage interactive or persistent terminal sessions. Must use before running these sessions, like start a dev server, SSH, REPL, ...
Guidelines to help you write code smartly by using workers. Only use
Disciplined diagnosis loop for hard bugs and performance regressions. Use only when user instructs or other skill references.
Review a plan before implementation. Use only when user instructs or other skill references.
Inspect Git history and uncommitted changes to obtain delta in blueprint.