@tomkapa/tayto 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +67 -220
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -8,235 +8,121 @@
8
8
 
9
9
  **Stop losing tasks between AI sessions. Stop drowning in Jira fields you don't need.**
10
10
 
11
- Tayto is a local-first task manager built for solo developers who work with AI coding agents. Two interfaces, one SQLite database, zero configuration.
11
+ A local-first task manager built for solo developers who work with AI coding agents.
12
+ CLI for agents. TUI for humans. One SQLite database. Zero configuration.
12
13
 
13
- [Quick Start](#quick-start) • [Why Tayto](#why-tayto) • [Workflow](#workflow) • [CLI Reference](#cli-reference) • [TUI Reference](#tui-reference)
14
+ [Install](#install) • [Workflow](#workflow) • [Agent Integration](#works-with-every-coding-agent) • [Claude Code Skills](#claude-code-skills)
14
15
 
15
16
  </div>
16
17
 
17
18
  ---
18
19
 
19
- ## Why Tayto
20
+ ## Install
20
21
 
21
- Every project management tool out there assumes you're on a team. They want you to configure sprints, assign story points, set due dates, and fill out fifteen fields before you can track a single task.
22
+ ```bash
23
+ npm install -g @tomkapa/tayto
24
+ ```
22
25
 
23
- If you're a solo dev shipping with AI agents like Claude Code, you need something different:
26
+ **Requires:** Node.js >= 25
24
27
 
25
- - **You forget things.** A quick idea during a coding session, a tech debt note from an AI-generated feature, a bug you noticed but can't fix right now. Without a fast capture tool, these vanish.
26
- - **AI generates work faster than you can track it.** Your agent builds five features in an afternoon. Each one leaves behind edge cases, missing tests, and shortcuts. That debt is invisible until it bites you.
27
- - **Priority fields are a lie.** When you're the only one executing, all that matters is order: what's first, what's next. Row 1 in the task list is what you do now. That's it.
28
- - **Your AI agent can't use Jira.** It needs a CLI that speaks JSON. Your existing tools weren't built for this.
28
+ ---
29
29
 
30
- Tayto solves exactly this: a **CLI for agents** and a **TUI for humans**, sharing the same local SQLite database. No server. No login. No internet required.
30
+ ## Demo
31
+
32
+ <video src="https://github.com/user-attachments/assets/bfd9e515-4ca6-4bd8-9bc3-d1b94eebf869" controls width="100%"></video>
31
33
 
32
34
  ---
33
35
 
34
36
  ## Workflow
35
37
 
36
- Tayto follows a lean, agile-inspired loop designed for how solo devs actually work:
37
-
38
38
  ![Workflow](workflow.png)
39
39
 
40
- **1. Capture** &mdash; Use AI to generate tasks from feature plans, record tech debt, or break down epics. Never lose an idea again.
40
+ **1. Capture** &mdash; AI generates tasks from feature plans, records tech debt, logs bugs.
41
41
 
42
- **2. Prioritize** &mdash; You review the backlog and drag tasks into execution order. No story points. No priority matrices. Just: what's first?
42
+ **2. Prioritize** &mdash; You drag tasks into execution order. No story points. Just: what's first?
43
43
 
44
- **3. Enrich** &mdash; AI analyzes the codebase and writes implementation-ready technical notes for the top backlog items.
44
+ **3. Enrich** &mdash; AI researches the codebase and writes implementation-ready technical notes.
45
45
 
46
- **4. Review** &mdash; You read the plan. Approve it, adjust it, or send it back.
46
+ **4. Review** &mdash; You read the plan. Approve, adjust, or send it back.
47
47
 
48
- **5. Execute** &mdash; AI implements the first `todo` task. You review the code. Cycle repeats.
49
-
50
- > Don't plan too far ahead. Keep tasks in the backlog. If something becomes urgent, re-rank it. Enrich only what's next. Ship what's ready. Simple.
48
+ **5. Execute** &mdash; AI implements the top `todo` task. You review the code. Cycle repeats.
51
49
 
52
50
  ---
53
51
 
54
- ## Quick Start
55
-
56
- ```bash
57
- # Install globally from npm
58
- npm install -g @tomkapa/tayto
59
-
60
- # Create a project (auto-links to current git repo)
61
- tayto project create -n "my-app" --default
62
-
63
- # Capture some tasks
64
- tayto task create -n "Fix auth token refresh" -t bug
65
- tayto task create -n "Add user dashboard" -t story
66
- tayto task create -n "Refactor DB connection pooling" -t tech-debt
67
-
68
- # Re-rank: put the bug at the top
69
- tayto task rank <bug-id> --top
70
-
71
- # Launch the TUI to review your backlog
72
- tayto
73
- ```
74
-
75
- ---
52
+ ## Works With Every Coding Agent
76
53
 
77
- ## Installation
54
+ Tayto's CLI outputs structured JSON to stdout &mdash; any agent with shell access can manage your tasks.
78
55
 
79
- ```bash
80
- npm install -g @tomkapa/tayto
81
- ```
82
-
83
- Or build from source:
84
-
85
- ```bash
86
- git clone https://github.com/tomkapa/tayto && cd tayto
87
- npm install && npm run build
88
- npm link
56
+ ```jsonc
57
+ // Every command returns a consistent envelope
58
+ { "ok": true, "data": { ... } }
89
59
  ```
90
60
 
91
- **Requires:** Node.js >= 25
61
+ <table>
62
+ <tr>
63
+ <td align="center" width="150">
64
+ <img src="https://cdn.simpleicons.org/anthropic/D97757" width="40" height="40" alt="Claude Code"><br>
65
+ <b>Claude Code</b><br>
66
+ <sub>First-class skills</sub>
67
+ </td>
68
+ <td align="center" width="150">
69
+ <img src="https://cdn.simpleicons.org/cursor/000000" width="40" height="40" alt="Cursor"><br>
70
+ <b>Cursor</b><br>
71
+ <sub>Agent mode / terminal</sub>
72
+ </td>
73
+ <td align="center" width="150">
74
+ <img src="https://cdn.simpleicons.org/windsurf/0066FF" width="40" height="40" alt="Windsurf"><br>
75
+ <b>Windsurf</b><br>
76
+ <sub>Cascade / terminal</sub>
77
+ </td>
78
+ <td align="center" width="150">
79
+ <img src="https://cdn.simpleicons.org/github/181717" width="40" height="40" alt="GitHub Copilot"><br>
80
+ <b>GitHub Copilot</b><br>
81
+ <sub>Agent mode / terminal</sub>
82
+ </td>
83
+ <td align="center" width="150">
84
+ <img src="https://cdn.simpleicons.org/cline/5A9" width="40" height="40" alt="Cline"><br>
85
+ <b>Cline</b><br>
86
+ <sub>VS Code agent</sub>
87
+ </td>
88
+ </tr>
89
+ </table>
90
+
91
+ No plugins. No API keys. Just install Tayto and your agent can `tayto task list`, `tayto task create`, and `tayto task update` out of the box.
92
92
 
93
93
  ---
94
94
 
95
- ## Two Interfaces, One Database
95
+ ## Claude Code Skills
96
96
 
97
- ### CLI &mdash; Built for AI Agents and Scripts
97
+ Tayto ships with [Claude Code skills](https://docs.anthropic.com/en/docs/claude-code/skills) for the full AI-assisted workflow &mdash; no prompt engineering required.
98
98
 
99
- Every command returns structured JSON to stdout. Errors go to stderr with exit code 1.
99
+ ### `/tayto`
100
100
 
101
- ```jsonc
102
- // Success
103
- { "ok": true, "data": { ... } }
104
-
105
- // Error
106
- { "ok": false, "error": { "code": "NOT_FOUND", "message": "..." } }
107
- ```
101
+ Manage projects and tasks directly from conversation. Create tasks, search the backlog, re-rank priorities, manage dependencies &mdash; all without leaving Claude Code.
108
102
 
109
- This makes Tayto a natural fit for AI coding agents. Claude Code can create tasks, search the backlog, read technical notes, and update status &mdash; all through simple CLI calls.
103
+ ### `/enrich-task`
110
104
 
111
- ### TUI &mdash; Built for Humans
105
+ Picks the next backlog task, researches the codebase for relevant patterns and architecture, then writes self-contained technical notes with implementation steps, acceptance criteria, and package recommendations. Splits out future enhancements as tech-debt tasks automatically.
112
106
 
113
- Run `tayto` with no arguments to launch an interactive terminal UI with:
107
+ ### `/implement-task`
114
108
 
115
- - Rich markdown rendering for task descriptions and technical notes
116
- - Vim-style navigation (`j`/`k`)
117
- - Inline filtering by status, type, and priority
118
- - Full-text search across all task fields
119
- - Task creation, editing, and status management without leaving the terminal
109
+ Picks the highest-priority `todo` task, reads its technical notes, checks dependencies, then implements the feature step by step. Verifies the implementation against acceptance criteria before marking done.
120
110
 
121
- ---
122
-
123
- ## CLI Reference
111
+ ### Adding skills to your project
124
112
 
125
- ### Project Management
113
+ Install from the community registry:
126
114
 
127
115
  ```bash
128
- tayto project create -n "my-app" -d "Description" --default
129
- tayto project list
130
- tayto project update <id> -n "new-name" --default
131
- tayto project delete <id>
132
- tayto project link <id> --remote <git-remote-url>
133
- tayto project unlink <id>
116
+ npx skills add tomkapa/tayto
134
117
  ```
135
118
 
136
- Projects auto-detect the current git remote, so `tayto` in a repo directory uses the right project automatically.
137
-
138
- ### Task Management
119
+ Or from the Claude Code marketplace:
139
120
 
140
121
  ```bash
141
- # Create
142
- tayto task create \
143
- -n "Fix login bug" \
144
- -t bug \
145
- -s todo \
146
- -p "my-app" \
147
- -d "Login fails on mobile" \
148
- --technical-notes "Check JWT expiry logic" \
149
- --additional-requirements "Must work on iOS Safari"
150
-
151
- # List and search
152
- tayto task list
153
- tayto task list --status in-progress --type bug
154
- tayto task search "login"
155
-
156
- # Update
157
- tayto task update <id> -s in-progress
158
- tayto task update <id> --append-notes "Root cause: token not refreshed"
159
- tayto task update <id> --append-requirements "Also fix on Android"
160
-
161
- # Re-rank (execution order)
162
- tayto task rank <id> --top
163
- tayto task rank <id> --bottom
164
- tayto task rank <id> --before <other-id>
165
- tayto task rank <id> --after <other-id>
166
- tayto task rank <id> --position 3
167
-
168
- # Break down into subtasks
169
- tayto task breakdown <parent-id> -f subtasks.json
170
-
171
- # Delete
172
- tayto task delete <id>
173
-
174
- # Export / Import
175
- tayto task export -o backup.json
176
- tayto task import -f backup.json
122
+ /plugin marketplace add tomkapa/tayto
123
+ /plugin install tayto
177
124
  ```
178
125
 
179
- ### Dependency Management
180
-
181
- ```bash
182
- tayto dep add <task-id> <depends-on-id>
183
- tayto dep add <task-id> <depends-on-id> -t blocked-by
184
- tayto dep remove <task-id> <depends-on-id>
185
- tayto dep list <task-id>
186
- tayto dep graph <task-id>
187
- ```
188
-
189
- Dependency types: `blocks`, `blocked-by`, `relates-to`, `duplicates`
190
-
191
- ---
192
-
193
- ## TUI Reference
194
-
195
- Launch with `tayto` or `tayto tui`.
196
-
197
- | Key | Action |
198
- |---|---|
199
- | `j` / `k` / arrows | Navigate |
200
- | `Enter` | Open task detail |
201
- | `c` | Create task |
202
- | `e` | Edit task |
203
- | `d` | Delete task |
204
- | `s` | Cycle status |
205
- | `/` | Search |
206
- | `f` | Filter by status |
207
- | `t` | Filter by type |
208
- | `0` | Clear filters |
209
- | `p` | Switch project |
210
- | `?` | Help |
211
- | `q` | Quit |
212
-
213
- ---
214
-
215
- ## Data Model
216
-
217
- ### Task Types
218
-
219
- | Type | Use for |
220
- |---|---|
221
- | `story` | Features and user stories |
222
- | `tech-debt` | Refactoring, cleanup, missing tests |
223
- | `bug` | Defects and issues |
224
-
225
- ### Statuses
226
-
227
- `backlog` &rarr; `todo` &rarr; `in-progress` &rarr; `review` &rarr; `done` (or `cancelled`)
228
-
229
- ### Task Fields
230
-
231
- Each task carries rich context for AI consumption:
232
-
233
- - **name** &mdash; short summary
234
- - **description** &mdash; user-facing details
235
- - **technical_notes** &mdash; implementation guidance (appendable)
236
- - **additional_requirements** &mdash; constraints and edge cases (appendable)
237
- - **rank** &mdash; execution order within the project
238
- - **parent_id** &mdash; hierarchical breakdown support
239
-
240
126
  ---
241
127
 
242
128
  ## Configuration
@@ -252,45 +138,6 @@ Database is created automatically on first run. All data stays on your machine.
252
138
 
253
139
  ---
254
140
 
255
- ## Claude Code Integration
256
-
257
- Tayto ships with Claude Code skills for the full AI-assisted workflow:
258
-
259
- | Skill | What it does |
260
- |---|---|
261
- | `/tayto` | Manage projects and tasks from conversation |
262
- | `/implement-task` | Pick the top todo and implement it |
263
- | `/enrich-task` | Research the codebase and write technical notes for the next backlog item |
264
-
265
- The CLI's JSON output format means any AI agent with shell access can interact with Tayto &mdash; no special integration needed.
266
-
267
- ---
268
-
269
- ## Architecture
270
-
271
- ```
272
- CLI (Commander.js) ──┐
273
- ├──> Service Layer (Zod validation) ──> Repository ──> SQLite
274
- TUI (Ink/React) ─────┘
275
- ```
276
-
277
- - **Result\<T\>** return type across all layers &mdash; no thrown exceptions
278
- - **OpenTelemetry** tracing on every operation
279
- - **FTS5** full-text search across task fields
280
- - **ULID** identifiers &mdash; sortable, collision-free
281
- - **Fractional ranking** &mdash; O(1) reorder without renumbering
282
-
283
- ---
284
-
285
- ## Development
286
-
287
- ```bash
288
- npm run dev # watch mode
289
- npm run test # run tests
290
- npm run check # prettier + eslint
291
- npm run build # production build
292
- ```
293
-
294
141
  ## License
295
142
 
296
143
  MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tomkapa/tayto",
3
- "version": "0.5.0",
3
+ "version": "0.5.1",
4
4
  "description": "CLI tool for task management - for solo devs and AI agents",
5
5
  "type": "module",
6
6
  "bin": {