santree 0.1.4 → 0.2.0
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.
- package/README.md +36 -2
- package/dist/cli.js +0 -0
- package/dist/commands/dashboard.d.ts +2 -0
- package/dist/commands/dashboard.js +900 -0
- package/dist/commands/doctor.js +2 -2
- package/dist/commands/helpers/template.d.ts +1 -1
- package/dist/commands/worktree/work.js +17 -1
- package/dist/lib/ai.d.ts +7 -0
- package/dist/lib/ai.js +10 -2
- package/dist/lib/dashboard/DetailPanel.d.ts +11 -0
- package/dist/lib/dashboard/DetailPanel.js +230 -0
- package/dist/lib/dashboard/IssueList.d.ts +13 -0
- package/dist/lib/dashboard/IssueList.js +112 -0
- package/dist/lib/dashboard/Overlays.d.ts +25 -0
- package/dist/lib/dashboard/Overlays.js +25 -0
- package/dist/lib/dashboard/data.d.ts +5 -0
- package/dist/lib/dashboard/data.js +75 -0
- package/dist/lib/dashboard/types.d.ts +150 -0
- package/dist/lib/dashboard/types.js +151 -0
- package/dist/lib/git.d.ts +19 -0
- package/dist/lib/git.js +32 -1
- package/dist/lib/github.d.ts +2 -1
- package/dist/lib/github.js +3 -2
- package/dist/lib/linear.d.ts +20 -0
- package/dist/lib/linear.js +53 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -56,6 +56,11 @@ This checks that all required tools are installed and configured correctly.
|
|
|
56
56
|
## Quick Start
|
|
57
57
|
|
|
58
58
|
```bash
|
|
59
|
+
# Open the interactive dashboard — manage everything from one screen
|
|
60
|
+
santree dashboard
|
|
61
|
+
|
|
62
|
+
# Or use individual commands:
|
|
63
|
+
|
|
59
64
|
# Create a new worktree and switch to it
|
|
60
65
|
santree worktree create feature/TEAM-123-my-feature
|
|
61
66
|
|
|
@@ -124,12 +129,34 @@ With the `stw` alias: `stw create`, `stw list`, `stw switch`, `stw work`, `stw c
|
|
|
124
129
|
|
|
125
130
|
| Command | Description |
|
|
126
131
|
|---------|-------------|
|
|
132
|
+
| `santree dashboard` | Interactive dashboard of all your Linear issues |
|
|
127
133
|
| `santree doctor` | Check system requirements and integrations |
|
|
128
134
|
|
|
129
135
|
---
|
|
130
136
|
|
|
131
137
|
## Features
|
|
132
138
|
|
|
139
|
+
### Interactive Dashboard
|
|
140
|
+
`santree dashboard` opens a full-screen TUI to manage all your work in one place. It shows your Linear issues grouped by project, with live status for worktrees, PRs, CI checks, and reviews.
|
|
141
|
+
|
|
142
|
+
**Left pane** — issue list with columns for priority, session ID, PR number, and CI status. Click to select, scroll wheel to navigate, drag the divider to resize panes.
|
|
143
|
+
|
|
144
|
+
**Right pane** — issue detail with description, file-level git status (staged/unstaged/untracked), PR info, checks, reviews, and context-aware keyboard actions.
|
|
145
|
+
|
|
146
|
+
**Keyboard actions:**
|
|
147
|
+
| Key | Action |
|
|
148
|
+
|-----|--------|
|
|
149
|
+
| `w` | Create worktree & start working (plan or implement) |
|
|
150
|
+
| `↵` | Resume session / switch to worktree |
|
|
151
|
+
| `e` | Open worktree in editor |
|
|
152
|
+
| `C` | Inline commit & push flow |
|
|
153
|
+
| `c` | Create PR (fill from commits or open in browser) |
|
|
154
|
+
| `f` / `r` | Fix PR / Review PR (launches in tmux) |
|
|
155
|
+
| `o` / `p` | Open Linear ticket / PR in browser |
|
|
156
|
+
| `d` | Remove worktree |
|
|
157
|
+
|
|
158
|
+
Commit and PR creation happen inline without leaving the dashboard. Work, fix, and review open in new tmux windows.
|
|
159
|
+
|
|
133
160
|
### Worktree Management
|
|
134
161
|
Create isolated worktrees for each feature branch. No more stashing or committing WIP code just to switch tasks.
|
|
135
162
|
|
|
@@ -270,6 +297,8 @@ Automatically pushes, detects existing PRs, and uses the first commit message as
|
|
|
270
297
|
| Node.js >= 20 | Runtime |
|
|
271
298
|
| Git | Worktree operations |
|
|
272
299
|
| GitHub CLI (`gh`) | PR integration |
|
|
300
|
+
| Claude Code (`claude`) | AI agent for `work`, `fix`, `review` |
|
|
301
|
+
| happy (`happy`) | Optional: used over `claude` if installed |
|
|
273
302
|
| tmux | Optional: new window support |
|
|
274
303
|
| VSCode (`code`) or Cursor (`cursor`) | Optional: workspace editor |
|
|
275
304
|
|
|
@@ -334,12 +363,17 @@ source/
|
|
|
334
363
|
├── lib/
|
|
335
364
|
│ ├── ai.ts # Shared AI logic (context, prompt, launch)
|
|
336
365
|
│ ├── git.ts # Git helpers (worktrees, branches, metadata)
|
|
337
|
-
│ ├── github.ts # GitHub CLI wrapper (PR info, auth, push)
|
|
366
|
+
│ ├── github.ts # GitHub CLI wrapper (PR info, auth, push, checks, reviews)
|
|
338
367
|
│ ├── linear.ts # Linear GraphQL API client (OAuth, tickets, images)
|
|
339
368
|
│ ├── exec.ts # Shell command helpers
|
|
340
|
-
│
|
|
369
|
+
│ ├── prompts.ts # Nunjucks template renderer
|
|
370
|
+
│ └── dashboard/ # Dashboard UI components
|
|
371
|
+
│ ├── types.ts # State types, action types, phase enums
|
|
372
|
+
│ ├── IssueList.tsx # Left pane — issue list with priority, session, PR, CI columns
|
|
373
|
+
│ └── DetailPanel.tsx # Right pane — issue detail, git status, context-aware actions
|
|
341
374
|
└── commands/ # One React (Ink) component per CLI command
|
|
342
375
|
├── doctor.tsx # Top-level: system check
|
|
376
|
+
├── dashboard.tsx # Top-level: interactive dashboard
|
|
343
377
|
├── worktree/ # Worktree management (create, list, switch, etc.)
|
|
344
378
|
├── pr/ # PR lifecycle (create, open, fix, review)
|
|
345
379
|
├── linear/ # Linear integration (auth, open)
|
package/dist/cli.js
CHANGED
|
File without changes
|