toodles-manual
Toodles Manual
CLI for todo list operations on Oculus graph nodes. Wraps the virtual fence API for checkbox lists.
Installation
pip install -e /path/to/toodlesCommands
Find Todo Lists
toodles find # All todo lists in graph
toodles find deploy # Filter by pattern
toodles find --node=my-node # Filter by slug
toodles find --json # JSON outputList Items
toodles ls my-node # All lists in node
toodles ls my-node:171 # By token index
toodles ls my-node:Pre-Flight # By section path
toodles ls my-node:Tasks.todo # Explicit type suffix
toodles ls my-node --all # Include checked items
toodles ls my-node --json # JSON outputModify Items
toodles check my-node:Tasks 0 # Check item 0
toodles uncheck my-node:Tasks 0 # Uncheck item 0
toodles toggle my-node:Tasks 0 # Toggle item 0
toodles add my-node:Tasks "New task"
toodles remove my-node:Tasks 0 # Prompts for confirmation
toodles remove my-node:Tasks 0 --forceCurrent List (Workspace)
toodles current # Show current list
toodles current set my-node:Tasks # Set current list
toodles current ls # List current
toodles current check 0 # Check in current
toodles current add "Task" # Add to currentShell Integration
# Get checked item content (for piping)
toodles checked my-node:Tasks
# Get checked item index
toodles checked my-node:Tasks --index
# Get all checked items
toodles checked my-node:Tasks --allAddress Formats
Path-based addressing supports multiple matching strategies:
| Format | Example | Matches |
|---|---|---|
slug |
my-node |
All lists in node |
slug:index |
my-node:171 |
By token index |
slug:SectionName |
my-node:Tasks |
Section name (stripped of label) |
slug:label |
my-node:daily-tasks |
The [label] from heading |
slug:Full [label] |
my-node:Tasks [daily] |
Full heading with label |
slug:kebab-case |
my-node:pre-flight |
Kebab-case conversion |
slug:path.todo |
my-node:Tasks.todo |
Explicit type suffix |
Matching Examples
For a section ## My Tasks [my-tasks], all of these work:
toodles ls my-node:My Tasks # Section name only
toodles ls my-node:my-tasks # Label only
toodles ls my-node:My Tasks [my-tasks] # Full heading
toodles ls my-node:my-tasks.todo # Label with type suffixMatching priority: label β section name β kebab-case β full heading
Radio Mode
Lists with <!-- mode: radio --> comment behave as single-select:
- Only one item can be checked at a time
- Checking an item unchecks the previous selection
toodles checkedreturns the single selected item
Configuration
export OCULUS_API_URL=http://localhost:7778 # DefaultExamples
# Daily workflow
toodles current set work:daily-tasks
toodles current ls
toodles current check 0
toodles current add "Review PR"
# Radio selector
toodles checked config:environment # Returns "production"
toodles check config:environment 1 # Switch to "staging"Provenance
Document
- Status: π΄ Unverified
Fences
toodles-manual-installation-fence-0
- Status: π΄ Unverified
toodles-manual-find-todo-lists-fence-0
- Status: π΄ Unverified
toodles-manual-list-items-fence-0
- Status: π΄ Unverified
toodles-manual-modify-items-fence-0
- Status: π΄ Unverified
toodles-manual-current-list-workspace-fence-0
- Status: π΄ Unverified
toodles-manual-shell-integration-fence-0
- Status: π΄ Unverified
toodles-manual-configuration-fence-0
- Status: π΄ Unverified
toodles-manual-examples-fence-0
- Status: π΄ Unverified
West
slots:
- context:
- Linking related manuals - snippy uses toodles
slug: snippy-manual
North
slots:
- context:
- Linking client registry to toodles implementation docs
slug: wanderland-clients
β northwanderland-clients
β westsnippy-manual