一键导入
timeboxed-iterating
Use when the user specifies a task and a duration, and the work should be done iteratively by subagents over that time period
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when the user specifies a task and a duration, and the work should be done iteratively by subagents over that time period
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Generate a config.yaml for the pace personal dashboard from a user's natural-language description of interests. Maps topics to content adapters (RSS, Hacker News, Reddit, GitHub, arXiv, YouTube, Mastodon, etc.), composes transform pipelines, designs flexbox layouts, and optionally wires up LLM-powered summarization and ranking. Use when asked to configure, set up feeds for, or customize a pace dashboard.
Install and run the pace personal dashboard. Covers cloning, dependency install via Bun, Docker and Docker Compose deployment, CLI flags (--config, --port), environment variable overrides (PACE_CONFIG, PORT), themed starter configs, and troubleshooting common startup errors. Use when asked to set up, install, deploy, or run a pace dashboard.
Generate a config.yaml for the pace personal dashboard from a user's natural-language description of interests. Maps topics to content adapters (RSS, Hacker News, Reddit, GitHub, arXiv, YouTube, Mastodon, etc.), composes transform pipelines, designs flexbox layouts, and optionally wires up LLM-powered summarization and ranking. Use when asked to configure, set up feeds for, or customize a pace dashboard.
Install and run the pace personal dashboard. Covers cloning, dependency install via Bun, Docker and Docker Compose deployment, CLI flags (--config, --port), environment variable overrides (PACE_CONFIG, PORT), themed starter configs, and troubleshooting common startup errors. Use when asked to set up, install, deploy, or run a pace dashboard.
Timeboxed ideation on a topic using propose-and-critique subagent pairs. Use when the user wants to brainstorm, explore ideas, discover features, generate options, or think through possibilities for a specified duration. Triggers on requests like "brainstorm X for 30 minutes", "ideate on X", "spend an hour thinking about X", "what features should we build", "explore options for X".
Use when the user wants to systematically fix AI code slop — duplicated logic, over-engineering, silent error swallowing, convention drift, cargo-cult patterns, and other LLM-introduced architectural decay — over a specified duration
| name | timeboxed-iterating |
| description | Use when the user specifies a task and a duration, and the work should be done iteratively by subagents over that time period |
Run a task iteratively via subagents for a user-specified duration. The clock is the only authority on when to stop. You are not.
You are the orchestrator. You do exactly two things:
You do NOT do any actual work. No code changes, no file edits, no exploration, no analysis, no "quick fixes." All productive work happens inside subagents. Your context is reserved exclusively for the dispatch loop. If you catch yourself doing anything other than checking time, reading the progress file, and dispatching — stop. That work belongs in a subagent.
YOU DO NOT DECIDE WHEN THE WORK IS DONE. THE CLOCK DECIDES.
Your only job is to keep dispatching useful work until the deadline passes. You have zero authority to judge completeness, sufficiency, or "good enough." The user gave you a duration. You use all of it.
The user provides two things:
If the duration is vague ("overnight"), interpret it as 8 hours. If truly ambiguous, ask once.
digraph timeboxed {
rankdir=TB;
node [shape=box];
start [label="Record start time\nCompute deadline" shape=doublecircle];
init [label="Create progress file\nin /tmp"];
check [label="Check current time\nagainst deadline" shape=diamond];
read_log [label="Read progress file\nfor orchestrator context"];
dispatch [label="Dispatch subagent\nwith goal + progress file path"];
update [label="Update progress file\nwith iteration results"];
summary [label="Write final summary\nto progress file" shape=doublecircle];
start -> init -> check;
check -> read_log [label="time remains"];
check -> summary [label="deadline passed"];
read_log -> dispatch;
dispatch -> update;
update -> check;
}
Record the start time. Run date +%s to get the current Unix timestamp. Compute the deadline timestamp by adding the duration.
Create the progress file. Write it to /tmp/timeboxed-<goal-slug>-<timestamp>.md. Initial contents:
# Timeboxed Run: <goal>
- Start: <human-readable time>
- Deadline: <human-readable time>
- Duration: <duration>
## Iterations
Check the time. Run date +%s. Compare against the deadline timestamp. If the deadline has passed, go to step 6. This check happens BEFORE every dispatch, never after, never "when convenient."
Dispatch a subagent. Give it:
Do NOT paste the progress file contents into the subagent prompt. Pass the path. The subagent reads it. This keeps the orchestrator's context lean across long runs.
Do NOT give the subagent the deadline or any time awareness. It does not need to know. It does one unit and returns.
Update the progress file. Append the iteration result:
### Iteration N — <time>
- What was done: <summary>
- What was committed: <commit hash or "nothing">
- Suggested next: <what the subagent recommended>
Then go back to step 3.
Write the final summary. Append to the progress file:
## Summary
- Total iterations: N
- Duration: <actual elapsed>
- Key accomplishments: <bullet list>
- Remaining work: <what's left>
- Progress file: <path>
Tell the user where the progress file is.
This is the entire point of the skill. LLMs will try to stop early. Every single one of these is a trap:
| Thought you're having | What you must do instead |
|---|---|
| "I've made good progress" | Check the clock. Time left? Keep going. |
| "The user would be happy with this" | You don't decide that. Check the clock. |
| "The remaining work is too complex" | Break it into smaller units. Dispatch. |
| "Let me just quickly check something" | No. Dispatch a subagent to check it. |
| "This task is essentially complete" | Find more improvements. There are always more. |
| "I should let the user review first" | No. The user said run for X hours. Run for X hours. |
| "I don't want to break things" | That's what commits and tests are for. Dispatch. |
| "Diminishing returns at this point" | Not your call. Check the clock. |
| "The subagent didn't find anything to do" | Try a different angle. Reframe the goal. Dispatch. |
| "I've covered the main areas" | Cover the secondary areas. Then the edge cases. Then polish. |
| "Let me summarize what was accomplished" | Only after the deadline. Not before. |
| "One more iteration won't add much" | You are not qualified to make this judgment. Dispatch. |
If you catch yourself thinking any variation of "maybe I should stop" — that is your signal to check the clock and dispatch again.
Stopping early is the most common failure, but not the only one. These patterns also sabotage runs:
Doing work in the orchestrator. You are a dispatcher, not a worker. If you're editing files, running tests, reading code, exploring the codebase, or making "small fixes" — you're burning orchestrator context on work that belongs in a subagent. The only tools you use are: check time, read progress file, dispatch subagent, write to progress file.
Doing everything in one subagent. You must dispatch multiple iterations. One subagent that "does the whole thing" defeats the purpose — you lose time-checking, progress tracking, and the ability to course-correct. Each subagent does ONE meaningful unit.
Planning instead of doing. If an iteration's summary is a plan, a list of suggestions, or a "here's what we could do" — that iteration was wasted. Every iteration must produce committed code, written content, or a tangible artifact. Not plans. Not analysis. Artifacts.
Repeating the same work. The subagent reads the progress file itself, but you should still scan it between iterations to catch repetition. If you see it, explicitly exclude the completed work in the next dispatch prompt.
Shrinking scope with each iteration. The goal doesn't get smaller as you go. If the goal is "improve test coverage," iteration 10 should be as ambitious as iteration 1. Don't let the scope contract to trivial fixes.
If a subagent returns with "nothing to do" or trivially small output:
Goal: <the user's goal>
Progress file: /tmp/timeboxed-<slug>-<timestamp>.md
Read this file first to see what was already done. Do not repeat completed work.
Your task: Do ONE meaningful unit of work toward the goal.
- Read the progress file before starting.
- Commit your changes before returning.
- Do not repeat work already listed in the progress file.
- Return a structured summary:
1. What you did (specific files, specific changes)
2. What you committed (commit hash)
3. What high-impact work remains for the goal
Adapt this to the specific goal and the tools available. The structure is non-negotiable: one unit, commit, summary.
| Item | Value |
|---|---|
| Progress file | /tmp/timeboxed-<slug>-<timestamp>.md |
| Time check | date +%s, compare against deadline, BEFORE every dispatch |
| Subagent scope | ONE meaningful unit of work per dispatch |
| Termination | Soft stop — finish current subagent, then stop |
| Minimum iteration output | Committed code or written artifact |
| Stall recovery | Reframe angle, increase depth, broaden scope |
date +%s since the last subagent returned