mininglamp-oss/octo-cli/octo-matter

Claude Code and agent skill by mininglamp-oss/octo-cli

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Matter (todo/task) domain — CRUD, status transitions, assignees, channels, timeline, and AI extract from chat messages. Load after octo-shared.

Install

npx vskill@latest install mininglamp-oss/octo-cli/octo-matter

SKILL.md

octo-matter — the matters domain

A matter is the Octo equivalent of a task or todo. The domain has 17 operations across five groups: core CRUD, status transitions, assignees, channels, and timeline. Plus one LLM helper: matter extract.

Backend: matters service at $OCTO_API_BASE_URL/api/v1/matters. Both App Bot and User Bot can call every operation in this domain.

1. Core CRUD

bash
octo-cli matter create --title "Fix login bug" # required: --title (≤500 chars)
octo-cli matter list --status open --assignee-id me --limit 50 # cursor pagination
octo-cli matter get <id>
octo-cli matter update <id> --title "..." --description "..."
octo-cli matter delete <id> # soft delete

create also accepts --description (≤10 000), --assignee-ids (repeatable — supports me alias), --deadline (RFC3339), --remind-at (RFC3339), --source-channel-id, --source-channel-type (1=user, 2=group, 5=thread), --source-name.

list filters: --status, --assignee-id (me supported), --creator-id, --q <query>, --source-channel-id, --source-channel-type, --channel-id, --limit (default 20, max 100), --cursor.

2. Status transitions

There is no state machine — any status can move to any status.

bash
octo-cli matter transition <id> --status done
octo-cli matter close <id> # alias → --status done
octo-cli matter reopen <id> # alias → --status open
octo-cli matter archive <id> # alias → --status archived

Valid values: open, done, archived.

3. Assignees

bash
octo-cli matter assignee add <id> --user-id <uid>
octo-cli matter assignee remove <id> <uid>

--user-id accepts me to self-assign. Adding a user who is already assigned returns DUPLICATE_ASSIGNEE (validation error — recover by listing current assignees first).

4. Channels

Link a matter to a chat channel so conversations show up in context.

bash
octo-cli matter channel link <id> --channel-id <cid> --channel-type 1 # 1=user 2=group 5=thread
octo-cli matter channel link <id> --channel-id <cid> --channel-type 2 --channel-name "#eng-ops"
octo-cli matter channel unlink <id> <channel_id>

5. Timeline

Timeline entries are the successor to comments. Simple text goes through --content; attachments, quoted messages, and channel context go through --data:

bash
octo-cli matter timeline add <id> --content "Ping from oncall"
octo-cli matter timeline add <id> --data '{
"content":"see attached log",
"attachments":[{"url":"https://…/log.txt","name":"log.txt","type":"text/plain"}]
}'
octo-cli matter timeline list <id> # paginated
octo-cli matter timeline delete <id> <entry_id>

--content caps at 10 000 characters.

6. AI extract — create a matter from chat messages

matter extract hands a chat transcript to an LLM and returns a structured matter. Typical bot use:

bash
octo-cli matter extract --data '{
"channel_type": 2,
"channel_id": "ch_abc",
"creator_uid": "<bot-owner-uid>",
"msgs": [
{"uid":"u_alice","text":"we need to fix login"},
{"uid":"u_bob","text":"+1 by friday"}
]
}'

Critical: a bot must set creator_uid to its owner_uid, not its own bot_uid — the backend rejects the request otherwise. Capture owner_uid from the one-time octo-cli bot register response at publish (--jq '.data.owner_uid') and cache it (env/config); reuse the cached value rather than re-registering on every extract. Note bot user-info does not return it (it needs --uid and returns only {uid,name,avatar}).

7. Common patterns

Self-scope with me

Anywhere an assignee UID is accepted, me resolves server-side to the caller's UID.

bash
octo-cli matter list --assignee-id me --status open
Cursor pagination

All list endpoints follow {data:[], pagination:{has_more, next_cursor}}. Let the CLI walk them:

bash
octo-cli matter list --status open --page-all
octo-cli matter timeline list <id> --page-all --page-limit 5
Pipe chains
bash
octo-cli matter list --status open --assignee-id me --jq '.data[].id' \
| xargs -I{} octo-cli matter close {}

8. Error recovery

error.codeWhat to do
MATTER_NOT_FOUNDConfirm the id with octo-cli matter list before retrying.
ASSIGNEE_NOT_FOUNDThe UID is wrong or not in the space. octo-cli bot space-members to verify.
DUPLICATE_ASSIGNEEAlready assigned — list current assignees and skip.
FORBIDDENBot lacks space membership or owner-equivalent permission.
SPACE_FORBIDDENOCTO_SPACE_ID / --space points at a space the bot isn't in.
VALIDATION_ERRORerror.detail.details names the offending field; fix and retry.
PAYLOAD_TOO_LARGEBody over 1 MB — trim description/timeline content.
RATE_LIMITEDHonour the cooldown window; the retry wrapper already waits once.

9. Schema lookup

When unsure about a flag or body shape:

bash
octo-cli schema matter.create
octo-cli schema matter.list
octo-cli schema matter.timeline.add

Everything in this skill is derived from those specs — if the schema says otherwise, trust the schema.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/mininglamp-oss/octo-cli/octo-matter/badge)](https://verified-skill.com/skills/mininglamp-oss/octo-cli/octo-matter)

Something wrong with this skill or its page? Tell us.