steipete/things-todo

Things 3 via things CLI: add, list, search, update, delete, verify.

Was ist things-todo?

things-todo is a Claude Code agent skill that things 3 via things CLI: add, list, search, update, delete, verify.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/steipete/agent-scripts/tree/main/skills/things-todo

Installed? Explore more Produktivität & Zusammenarbeit skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Things Todo

Use this for Things 3 tasks on Peter's Macs. Prefer things for Things-backed todos; use $reminders only when the user asks for Apple Reminders.

Tool

  • CLI: things
  • Repo: https://github.com/ossianhempel/things3-cli
  • Install:
GOBIN=/opt/homebrew/bin go install github.com/ossianhempel/things3-cli/cmd/things@latest

Auth for update URL operations:

source ~/.profile >/dev/null 2>&1 || true
things auth

THINGS_AUTH_TOKEN should come from ~/.profile or 1Password. Never print it. things update --dry-run must redact it as auth-token=***.

Start

Use JSON for scripted reads and verification:

things tasks --format json --limit 20
things today --format json
things search "query" --format json

Things DB reads may need Full Disk Access for the calling app. Writes should go through Things URL Scheme or AppleScript via things; do not write the SQLite DB directly.

Add

Default: add, then search/read back.

things add "Book LHR-SFO nonstop business flight" --notes "Nonstop only." --when tomorrow --tags travel
things tasks --search "LHR-SFO" --format json

Useful flags:

  • --notes "text"
  • --when today|tomorrow|evening|anytime|someday|YYYY-MM-DD
  • --deadline YYYY-MM-DD
  • --list "Project or Area"
  • --tags tag1,tag2
  • --checklist-item "text" repeatable
  • --dry-run to inspect the things:/// URL without mutating.

Update / Delete

Find the UUID first, then mutate by id:

things tasks --search "flight" --format json
things update --id <uuid> "New title" --notes "Updated notes"
things tasks --search "New title" --format json
things delete --id <uuid> --confirm <uuid>
things tasks --search "New title" --format json
things trash --search "New title" --format json

Always read back after writes. Delete moves items to Things Trash; verify normal search is empty and trash search contains the item when cleanup matters.

Conventions

  • Turn vague asks into concrete next-action titles.
  • Preserve wording when the user clearly wants capture, not rewriting.
  • Split unrelated actions into separate to-dos.
  • Use Today only when the user implies it; otherwise use Inbox/Anytime defaults.
  • Prefer --dry-run before bulk updates/deletes.
  • For current date math, run date; do not guess.

Gotchas

  • macOS only; remote hosts may show Things.app version as UNKNOWN if the app is absent or not visible there.
  • update needs THINGS_AUTH_TOKEN; add does not.
  • --tags is plural for add/update; tasks --tag is singular for filtering.
  • today JSON may show start: Anytime plus a real start_date; use command membership/read-back, not one field alone, to verify Today placement.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

steipete/agent-transcript

GitHub PR/issue agent transcripts: redact, preview, and insert safely.

steipete/beeper

Beeper cache: contact hints, room lookup, WhatsApp/iMessage traces, FTS.

steipete/browser-use

Existing Chrome automation: Chrome plugin first, mcporter fallback.

steipete/clawsweeper-status

ClawSweeper status: URLs, workflow health, active workers, ops snapshot.

steipete/clickclack

ClickClack ops: chat app, Hetzner deploy, DNS/docs/app, Docker rollout.

steipete/cloudflare-registrar

Cloudflare Registrar: domain availability, prices, registration via mcporter.

steipete/codex-debugging

Codex debugging: codex-rs core/tui/exec/cli/app-server/config.

steipete/create-cli

CLI UX/spec: args, flags, help, output, errors, config, dry-run.

steipete/discord-clawd

Discord-backed OpenClaw agent/session relay; not archive search.

steipete/domain-dns-ops

DNS/domain ops: registrars, zones, redirects, DNS/HTTP verify, manager truth.

steipete/frontend-design

Frontend UI: pages, apps, components, polished non-generic design.

steipete/github-author-context

GitHub contributor context: identity, activity, trust, company/team signal.

steipete/github-cache-hygiene

GitHub quota/cache hygiene: gh, ghx, xcache, gitcrawl, mirrors, limits.

steipete/github-deep-review

GitHub deep review: bugs, PRs, best fix, stale-or-real, read code first.

steipete/github-project-triage

GitHub issue/PR triage: queues, CI, blockers, risk, proof, next actions.

steipete/hopper-debugger

Hopper debugging: macOS/iOS binaries, ObjC/Swift symbols, dyld, LLDB.

steipete/instruments-profiling

Instruments/xctrace profiling: macOS/iOS traces, binaries, args, exports.

steipete/mac-maintenance

Mac upkeep: brew update/upgrade, pull clean repos, empty Trash.

steipete/maintainer-orchestrator

Open-source maintainer orchestration: Codex app workers, work recovery, dependencies, vision, releases.

steipete/markdown-converter

Markdown conversion: PDF, Office, HTML, data, OCR, audio, ZIP, YouTube.

Verwandte Skills