원클릭으로
follow-up-tasks
Propose follow-up tasks before marking your current task as complete.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Propose follow-up tasks before marking your current task as complete.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Design static ad creatives for social media and display advertising campaigns.
Source and evaluate candidates with job analysis, CV screening, and pipeline tracking.
Find relevant companies and leads for B2B sales with ICP definition and qualification frameworks.
Draft emails, manage calendars, prepare agendas, and organize productivity.
Create brand identity kits — logos, color palettes, typography, naming, and style guides.
Conduct thorough, multi-source research with structured reports and source scoring.
| name | follow-up-tasks |
| description | Propose follow-up tasks before marking your current task as complete. |
As you work on your current task, watch for additional work that should be done as follow-up tasks -- separate units of work related to your current task but outside its scope.
Categorize each follow-up task using one of these categories:
incomplete_scope: Parts of the original request that you intentionally deferred to keep the current task focusednext_steps: Functionality or features users would want next, whether directly extending what you just built or addressing unmet needs in the projecttech_debt: Code quality issues, hardcoded values, shortcuts, or refactoring opportunities you noticed while workingtest_gaps: Tests that should be written but aren't part of the current task's deliverableWrite titles for non-technical users -- lead with impact, not implementation - especially for tech debt and test gaps.
Before submitting, review each title by asking: "Would a non-technical user understand what this means and why they'd want it?" If not, rewrite it. Examples:
Before marking your task as complete, propose up to 3 follow-up tasks by calling proposeFollowUpTasks -- NOT bulkCreateProjectTasks or createProjectTask. The proposeFollowUpTasks callback automatically links follow-ups to your current task as the parent -- required for correct task hierarchy. Submit them all in a single call with clear titles, descriptions, and a category (required). Keep only the highest-impact follow-ups. Each description should include relevant file paths and enough context for another agent to pick up the work independently.
Only propose follow-ups that represent genuine, actionable work.
If your current task already has downstream tasks depending on it (listed in your task assignment), skip calling proposeFollowUpTasks entirely -- those tasks already cover the planned next steps.
proposeFollowUpTasks is one-shot per assigned project task -- not per turn, not per subfeature, not per markTaskComplete cycle. The system rejects duplicate calls. If you're marking complete again after more work on the same assigned task, review your previously proposed follow-ups; if any are now stale, call markFollowUpTaskObsolete to retract them.
// Log the result so you have taskRefs for later use with markFollowUpTaskObsolete
const { proposed: followUps } = await proposeFollowUpTasks({
tasks: [
{
title: "Let users save favorite recipes to a personal collection",
category: "next_steps",
description: `# Let users save favorite recipes to a personal collection
## What & Why
Users currently can't keep track of recipes they like. A favorites collection is the natural next feature on top of the existing browsing flow -- it gives the app stickiness and a reason to return.
## Done looks like
- Authenticated users can favorite / unfavorite a recipe from the list and detail pages
- A "My favorites" page shows the user's collection
- Favorites persist across sessions
## Relevant files
- \`src/pages/recipes/[id].tsx\`
- \`src/components/RecipeCard.tsx\``
},
{
title: "Save recipes permanently so they aren't lost on refresh",
category: "tech_debt",
description: `# Save recipes permanently so they aren't lost on refresh
## What & Why
Recipe data is hardcoded in a static file. Users who add or edit recipes will lose their changes on page refresh. Moving data to the database ensures persistence.
## Done looks like
- Recipes are stored in the database and served via API
- Users can add, edit, and delete recipes without losing data
## Relevant files
- \`src/data/recipes.ts\``
}
]
});
console.log(followUps.map(t => ({ taskRef: t.taskRef, title: t.title })));
// Remove an obsolete follow-up
await markFollowUpTaskObsolete({ taskRef: "#12" });