@lovek4d/kickflip 0.3.1 → 0.5.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/CONTEXT.md +170 -118
- package/README.md +23 -14
- package/SKILL.md +40 -38
- package/bin/doctor.mjs +4 -4
- package/bin/install.mjs +3 -3
- package/bin/kickflip.mjs +34 -26
- package/bin/wait-events.mjs +2 -2
- package/board/arch-review.mjs +1 -1
- package/board/auto-review.mjs +2 -0
- package/board/bin/board.mjs +213 -74
- package/board/domain.mjs +8 -5
- package/board/finish.mjs +4 -0
- package/board/headless.mjs +4 -0
- package/board/merge3.mjs +1 -0
- package/board/on-host.mjs +1 -1
- package/board/permissions.mjs +2 -0
- package/board/public/app-arch.js +2 -2
- package/board/public/app-asks.js +39 -103
- package/board/public/app-banner.js +2 -2
- package/board/public/app-cards.js +166 -73
- package/board/public/app-core.js +2 -23
- package/board/public/app-header.js +12 -5
- package/board/public/app-lanes.js +201 -47
- package/board/public/app-needs.js +2 -1
- package/board/public/app-reader.js +174 -0
- package/board/public/app-snapshot.js +2 -2
- package/board/public/app-threads.js +53 -42
- package/board/public/app.html +4 -1
- package/board/public/app.js +78 -96
- package/board/public/attach.js +39 -3
- package/board/public/dialogs.js +59 -14
- package/board/public/hub-kit.js +9 -6
- package/board/public/hub.css +6 -18
- package/board/public/linear-key.js +6 -4
- package/board/public/log.html +48 -0
- package/board/public/new-task.js +121 -0
- package/board/public/prompts.js +9 -8
- package/board/public/prototype-kit.js +6 -6
- package/board/public/prototype-switcher.js +13 -5
- package/board/public/prototype.html +1 -0
- package/board/public/router.js +8 -7
- package/board/public/rules-editor.js +3 -4
- package/board/public/shell.js +24 -6
- package/board/public/sidebar.css +22 -1
- package/board/public/sidebar.js +64 -31
- package/board/public/style.css +245 -64
- package/board/public/toasts.js +2 -2
- package/board/public/ui-cards.js +205 -75
- package/board/public/ui-enums.js +6 -5
- package/board/public/ui-header.js +10 -10
- package/board/public/ui-hub.js +4 -4
- package/board/public/ui-markdown.js +1 -1
- package/board/public/ui-order.js +9 -6
- package/board/public/ui-page-header.js +10 -7
- package/board/public/ui-patch.js +53 -0
- package/board/public/ui-phase-bars.js +17 -0
- package/board/public/ui-prompts.js +8 -8
- package/board/public/ui-questions.js +61 -29
- package/board/public/ui-sidebar.js +54 -24
- package/board/public/ui-snapshot.js +20 -9
- package/board/public/ui-threads.js +40 -21
- package/board/public/ui.js +116 -18
- package/board/public/view-frame.js +2 -1
- package/board/public/view-hub-settings.js +25 -18
- package/board/public/view-hub.js +53 -12
- package/board/public/view-notes.js +1 -1
- package/board/public/view-questions.js +142 -62
- package/board/public/view-settings.js +189 -52
- package/board/review.mjs +1 -1
- package/board/server.mjs +20 -12
- package/board/store.mjs +15 -12
- package/board/tickets.mjs +3 -3
- package/board/worktree.mjs +21 -15
- package/docs/hub-session.md +4 -4
- package/hooks-plugin/hooks/codex-share-auto.mjs +1 -1
- package/hooks-plugin/hooks/watcher-stop.mjs +2 -2
- package/hub/board-repo.mjs +1 -1
- package/hub/boards.mjs +4 -4
- package/hub/close-board.mjs +1 -1
- package/hub/front-door.mjs +20 -0
- package/hub/github.mjs +4 -4
- package/hub/home.mjs +1 -1
- package/hub/hub.mjs +11 -14
- package/hub/incoming.mjs +2 -0
- package/hub/linear.mjs +2 -2
- package/hub/live.mjs +2 -2
- package/hub/new-board.mjs +2 -2
- package/hub/owner-checks.mjs +1 -0
- package/hub/permission-denied-hook.mjs +2 -0
- package/hub/pr-report.mjs +3 -1
- package/hub/presence.mjs +1 -1
- package/hub/prompts.mjs +1 -1
- package/hub/push.mjs +2 -2
- package/hub/readiness.mjs +2 -2
- package/hub/repos.mjs +3 -3
- package/hub/restart-board.mjs +1 -1
- package/hub/schedule.mjs +1 -1
- package/hub/sessions.mjs +2 -2
- package/hub/sw.js +1 -1
- package/hub/try.mjs +8 -4
- package/hub/usage.mjs +3 -3
- package/hub/views.mjs +1 -1
- package/package.json +5 -1
- package/shared/card-prs.mjs +1 -0
- package/shared/colors.css +5 -4
- package/shared/fake-gh.mjs +59 -8
- package/shared/owner-check.mjs +3 -0
- package/shared/repos.mjs +1 -1
- package/shared/tailscale.mjs +1 -0
- package/shared/usage-gate.mjs +1 -1
- package/board/public/view-polling.js +0 -87
package/README.md
CHANGED
|
@@ -2,36 +2,44 @@
|
|
|
2
2
|
|
|
3
3
|
Kickflip puts your Claude Code sessions' work on your phone. One hub on your host, a Mac or a Linux machine, serves pages over your Tailscale network: a sidebar of every site, and boards that show each session's work as cards, with the questions waiting on you and a push notification when something needs you. Sessions write to their boards, and you follow and steer them from your phone.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Install
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
- Node 22+
|
|
10
|
-
- Git
|
|
11
|
-
- [Claude Code](https://claude.com/claude-code)
|
|
12
|
-
- [gh](https://cli.github.com), signed in
|
|
13
|
-
- [Tailscale](https://tailscale.com), with HTTPS certificates turned on for your tailnet, on the host and on your phone
|
|
14
|
-
|
|
15
|
-
Optional: tmux, only for `kickflip join --hub` and `kickflip hub` below, and Codex.
|
|
16
|
-
|
|
17
|
-
Install and set up the host:
|
|
7
|
+
On a Mac, with [Homebrew](https://brew.sh):
|
|
18
8
|
|
|
19
9
|
```sh
|
|
10
|
+
brew install node git gh
|
|
11
|
+
brew install --cask tailscale-app claude-code
|
|
12
|
+
|
|
20
13
|
npm i -g @lovek4d/kickflip
|
|
21
14
|
kickflip init
|
|
22
15
|
```
|
|
23
16
|
|
|
17
|
+
Kickflip needs Node 22 or newer. On Linux, install the same tools with your package manager.
|
|
18
|
+
|
|
19
|
+
Sign in to Tailscale and turn on HTTPS certificates for your tailnet. Run `gh auth login`. Do both on the host, and put Tailscale on your phone too.
|
|
20
|
+
|
|
21
|
+
Optional: tmux, only for `kickflip join --hub` and `kickflip hub` below, and Codex.
|
|
22
|
+
|
|
24
23
|
`kickflip init` links kickflip into Claude Code, starts the hub as a login service and serves it over Tailscale. Run `kickflip doctor` any time to see what is set up and what is not.
|
|
25
24
|
|
|
26
|
-
## Open
|
|
25
|
+
## Open on your phone
|
|
27
26
|
|
|
28
|
-
|
|
27
|
+
Run `kickflip url`. Open the address it prints.
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
$ kickflip url
|
|
31
|
+
https://mac.tailnet-name.ts.net/
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Add it to your home screen to get push notifications.
|
|
29
35
|
|
|
30
36
|
## Add a board
|
|
31
37
|
|
|
32
38
|
- **From the app:** tap New board and pick a GitHub repo.
|
|
33
39
|
- **From a folder:** in a git repo's folder, run `kickflip join`. It asks for a board name and starts the board's Claude Code session in the background.
|
|
34
40
|
|
|
41
|
+
The hub checks every board's PRs on GitHub in one query, and handles about 50 open PRs at once.
|
|
42
|
+
|
|
35
43
|
## Run the hub board in tmux (optional)
|
|
36
44
|
|
|
37
45
|
To have the hub board's session running in a terminal you can attach to, run `kickflip join --hub` in its folder. Later, `kickflip hub` attaches to it, or starts it first. This needs tmux.
|
|
@@ -39,6 +47,7 @@ To have the hub board's session running in a terminal you can attach to, run `ki
|
|
|
39
47
|
## Commands
|
|
40
48
|
|
|
41
49
|
- `kickflip init`: first-time setup
|
|
50
|
+
- `kickflip url`: print the address to open on your phone
|
|
42
51
|
- `kickflip doctor`: check what is set up, `--fix` repairs it
|
|
43
52
|
- `kickflip join`: add this folder as a board
|
|
44
53
|
- `kickflip hub`: attach to the hub board's tmux session
|