Install
$ agentstack add skill-hasna-skills-skill-goal-execute ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
skill-goal-execute — Goal → Channel Thread → Plan → Tasks → Execute
Turn a stated goal into structured, tracked, executed work. This skill is the bridge between "here's what I want" and "it's done", using the three canonical systems: conversations (one goal thread in the project's channel), todos (a plan + tasks), and mementos (learnings as you go).
Inputs
- The goal — what the user wants achieved (one or more sentences).
- The project — the project this goal belongs to. If global / not tied to a
project, use the machine-name project (hostname, e.g. apple06).
Workflow
0. Log in & route
Ensure you're logged in as an agent (skill-login). Determine the target project; for global work ensure the machine-name project exists (todos projects --add "$HOME" --name "$(hostname | sed 's/\.local$//')").
1. Open a goal thread in the project's conversations channel
Every project has ONE channel, named per the channel classes (flat repo name for repo/package projects, full name for platform-*/iapp-*/cweb-*/ community-* products, oss-*/internal-*/research-* for initiatives — same naming as skill-project-create). Goals do NOT get their own channels: one thread per goal inside the project channel, updated in-thread.
# Ensure the project's channel exists (create if missing; "already exists" is fine)
conversations channel create "" --description " coordination" --from 2>/dev/null || true
conversations channel join "" --from
# Open the goal thread: post the kickoff and capture its message id
GOAL_MSG_ID=$(conversations send "🎯 Goal: . Breaking into a plan + tasks now." \
--channel "" --from -j \
| python3 -c "import sys,json; print(json.load(sys.stdin)['id'])")
Machines have no channels of their own (machine traffic folds into ops), so for global / machine-level goals open the thread in ops instead.
2. Create a plan in todos
todos plans --add "" -d ""
# capture the returned PLAN_ID
3. Break the goal into tasks under that plan
Decompose the goal into concrete, ordered, individually-verifiable steps. Create each as a task assigned to the plan and the project:
todos add "" --plan "" --project "" -p high
todos add "" --plan "" --project "" -p high
# ... one per step. Use --parent for sub-steps and deps for ordering if needed.
Post the breakdown to the goal thread so it's visible:
conversations reply "" --to $GOAL_MSG_ID --from
4. Execute the tasks ONE BY ONE
Work strictly one task at a time — never batch:
for each task in plan order:
todos start # claim + in_progress
... do the work, verify it actually works ...
todos comment ""
todos done # only after verified
conversations reply "✓ " --to $GOAL_MSG_ID --from
(save a memory with skill-memory-save if something non-obvious was learned)
Respect the "execute tasks one by one — never in bulk" rule: each task gets individual attention and verification before moving on.
5. Close out
When all tasks are done:
todos plans --complete ""
conversations reply "🏁 Goal complete: . ." --to $GOAL_MSG_ID --from
Save a summary memory (skill-memory-save) capturing the outcome and any decisions.
Rules
- ALWAYS: goal thread (project channel) → plan (todos) → tasks (todos) → execute one
by one. Don't skip the plan or the thread.
- One thread per goal in the project's channel — never a per-goal channel, never
duplicate threads; update in-thread (conversations reply --to ).
- The project channel follows the channel-class naming (see
skill-project-create);
global/machine goals thread into ops.
- Route the plan/tasks to the specific project, or the machine-name project for global
goals.
- Execute tasks individually and verify each before completing — never bulk-complete.
- Post progress to the goal thread; save learnings to mementos. Never go dark.
- Prefer the CLIs (
todos,conversations,mementos); fall back from MCP to CLI if
an MCP is stale/broken.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: hasna
- Source: hasna/skills
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.