Awesome-omni-skill things3-manager
Manage tasks, projects, areas, headings, and tags in the Things 3 macOS app via a local CLI (list Inbox/Today/Upcoming/Anytime/Someday/Logbook, search, create/update/complete/cancel items, open items in Things). Use when Codex needs to manage Things 3 on macOS.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/things3-manager" ~/.claude/skills/diegosouzapw-awesome-omni-skill-things3-manager-96f2f4 && rm -rf "$T"
manifest:
skills/tools/things3-manager/SKILL.mdsource content
Things 3 Manager (CLI)
Quick start
- Ensure Things 3 is installed and opened at least once.
- In Things → Settings → General: enable “Enable Things URLs”.
- Run the CLI (auto-bootstraps
and installs deps on first run):.skills-data/things3-manager/venvbash .codex/skills/things3-manager/scripts/things --helpbash .codex/skills/things3-manager/scripts/things inboxbash .codex/skills/things3-manager/scripts/things search "weekly review"bash .codex/skills/things3-manager/scripts/things add-todo --title "Book flights" --when today --tag travel --checklist "passport" --checklist "charger"
Operating rules (for Codex)
- Prefer read-only commands first (
,inbox
,today
,search
,projects
,areas
) to discover UUIDs and current state.tags - Before any write command (
,add-todo
,add-project
,update-todo
), summarize the exact changes and confirm with the user.update-project - If the user provides a project/area/heading by name, resolve it by listing (
/projects
/areas
) before writing.headings
Local data and env
- Store all mutable state under <project_root>/.skills-data/<skill-name>/.
- Keep config and registries in .skills-data/<skill-name>/ (for example: config.json, <feature>.json).
- Use .skills-data/<skill-name>/.env for SKILL_ROOT, SKILL_DATA_DIR, and any per-skill env keys.
- Install local tools into .skills-data/<skill-name>/bin and prepend it to PATH when needed.
- Install dependencies under .skills-data/<skill-name>/venv:
- Python: .skills-data/<skill-name>/venv/python
- Node: .skills-data/<skill-name>/venv/node_modules
- Go: .skills-data/<skill-name>/venv/go (modcache, gocache)
- PHP: .skills-data/<skill-name>/venv/php (cache, vendor)
- Write logs/cache/tmp under .skills-data/<skill-name>/logs, .skills-data/<skill-name>/cache, .skills-data/<skill-name>/tmp.
- Keep automation in <skill-root>/scripts and read SKILL_DATA_DIR (default to <project_root>/.skills-data/<skill-name>/).
- Do not write outside <skill-root> and <project_root>/.skills-data/<skill-name>/ unless the user requests it.
Commands (CLI)
- Lists:
,inbox
,today
,upcoming
,anytime
,someday
,logbook
,trashrecent
- Browsing:
,projects
,areas
,tags
,headings
,todostagged-items
- Search:
,searchsearch-advanced
- Writes (via Things URL scheme):
,add-todo
,add-project
,update-todoupdate-project
- Open in Things:
,showsearch-items
Attribution
- CLI implementation is based on
,things_server.py
, andurl_scheme.py
fromformatters.py
.https://github.com/hald/things-mcp