Install
$ agentstack add skill-onehorizonai-skills-one-update-task ✓ 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
Update Task
Update existing One Horizon work or interact with its comments. Choose the MCP tool that matches the work type and action.
Shared rules
- Never modify task descriptions to record progress. Use comments instead.
- When changing status (e.g. to
Completed), add a comment explaining what changed and why. - Resolve IDs first with
one-list-workorget-task-detailswhen needed. - When editing an initiative description, use
patch-documentwithworkspaceId,taskIdset to the initiative ID, and preciseops; the server resolves or creates the linked content document automatically. - Prefer
replace_text,insert_before,insert_after, anddelete_textover rewriting the entire description. - Use
update-initiativeonly for initiative metadata:title,status,assigneeIds,teamIds,taxonomyLabelIds, andparentInitiativeId. - If both description and metadata change, call
patch-document(taskId=initiativeId, ...)first, thenupdate-initiative(...). If you need the refreshed full initiative, callget-task-detailsafter the mutations. - If a patch fails because the target or anchor is stale or missing, call
get-task-details, then retry with corrected ops.
By work type
Todo
Call update-todo:
update-todo({
"taskId": "",
"workspaceId": "",
"status": "Completed"
})
Then add a comment with what changed:
add-task-comment({
"taskId": "",
"workspaceId": "",
"source": "skill",
"content": "**Changes**\n- What changed: Added retry backoff and idempotency guard\n- Why: Prevent duplicate processing on transient failures"
})
Roadmap initiative
Use patch-document for initiative description edits and update-initiative for metadata.
Description edit only:
patch-document({
"workspaceId": "",
"taskId": "",
"ops": [
{
"kind": "replace_text",
"target": "EMEA pilot",
"replacement": "EU launch"
}
]
})
Description plus metadata:
patch-document({
"workspaceId": "",
"taskId": "tsk_123",
"ops": [
{
"kind": "insert_after",
"anchor": "### Rollout",
"text": "\n- Roll out to two design partners first.\n"
}
]
})
update-initiative({
"initiativeId": "tsk_123",
"workspaceId": "",
"status": "In Progress"
})
Metadata only:
update-initiative({
"initiativeId": "",
"workspaceId": "",
"status": "In Progress",
"assigneeIds": [""],
"teamIds": [""]
})
Then add a comment:
add-task-comment({
"taskId": "",
"workspaceId": "",
"source": "skill",
"content": "**Changes**\n- What changed: Implemented OAuth callback and token persistence\n- Why: Enable first end-to-end auth handshake"
})
Bug
Call update-bug. When writing back a fix, add root cause, code changes, and why as a comment:
update-bug({
"taskId": "",
"workspaceId": "",
"status": "In Progress",
"assigneeIds": [""],
"teamIds": [""]
})
add-task-comment({
"taskId": "",
"workspaceId": "",
"source": "skill",
"content": "**Changes**\n- What changed: Fixed stale cache key invalidation\n- Why: Totals were computed with outdated cache entries"
})
Feature request
Call update-feature-request:
update-feature-request({
"taskId": "",
"workspaceId": "",
"status": "Planned",
"assigneeIds": [""],
"teamIds": [""]
})
add-task-comment({
"taskId": "",
"workspaceId": "",
"source": "skill",
"content": "## Update\n- Summary: Scoped implementation approach and acceptance criteria"
})
Comment formats
Delivery update (code shipped / fix completed):
**Changes**
- What changed:
- Why:
Research or planning update (no implementation delivered):
## Update
- Summary:
List comments
list-task-comments({
"taskId": "",
"workspaceId": ""
})
React to a comment
Toggles an emoji reaction (adds if missing, removes if already present):
toggle-task-comment-reaction({
"taskId": "",
"workspaceId": "",
"commentId": "",
"emoji": "👍"
})
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: onehorizonai
- Source: onehorizonai/skills
- License: MIT
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.