pelican-cc 0.3.0 → 0.4.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/CHANGELOG.md +199 -0
- package/README.md +8 -6
- package/dist/server/index.js +6238 -1001
- package/dist/server/index.js.map +4 -4
- package/dist/web/assets/Chat-hw_dVyZ5.js +101 -0
- package/dist/web/assets/Chat-hw_dVyZ5.js.br +0 -0
- package/dist/web/assets/Chat-hw_dVyZ5.js.gz +0 -0
- package/dist/web/assets/ModelSheet-DDh0NARP.js +1 -0
- package/dist/web/assets/ModelSheet-DDh0NARP.js.br +0 -0
- package/dist/web/assets/ModelSheet-DDh0NARP.js.gz +0 -0
- package/dist/web/assets/Settings-ByxVBoK1.js +4 -0
- package/dist/web/assets/Settings-ByxVBoK1.js.br +0 -0
- package/dist/web/assets/Settings-ByxVBoK1.js.gz +0 -0
- package/dist/web/assets/Usage-DvP3bGmY.js +1 -0
- package/dist/web/assets/Usage-DvP3bGmY.js.br +0 -0
- package/dist/web/assets/Usage-DvP3bGmY.js.gz +0 -0
- package/dist/web/assets/WorkspaceChanges-Cnv5Vi7J.js +1 -0
- package/dist/web/assets/WorkspaceChanges-Cnv5Vi7J.js.br +0 -0
- package/dist/web/assets/WorkspaceChanges-Cnv5Vi7J.js.gz +0 -0
- package/dist/web/assets/WorkspaceFiles-CSlYqC41.js +1 -0
- package/dist/web/assets/WorkspaceFiles-CSlYqC41.js.br +0 -0
- package/dist/web/assets/WorkspaceFiles-CSlYqC41.js.gz +0 -0
- package/dist/web/assets/index-Ck4Wpk8v.css +2 -0
- package/dist/web/assets/index-Ck4Wpk8v.css.br +0 -0
- package/dist/web/assets/index-Ck4Wpk8v.css.gz +0 -0
- package/dist/web/assets/index-fRwaTlu9.js +40 -0
- package/dist/web/assets/index-fRwaTlu9.js.br +0 -0
- package/dist/web/assets/index-fRwaTlu9.js.gz +0 -0
- package/dist/web/assets/usage-CHTS1DtT.js +1 -0
- package/dist/web/assets/usage-CHTS1DtT.js.br +0 -0
- package/dist/web/assets/usage-CHTS1DtT.js.gz +0 -0
- package/dist/web/index.html +2 -2
- package/dist/web/index.html.br +0 -0
- package/dist/web/index.html.gz +0 -0
- package/dist/web/sw.js +56 -14
- package/dist/web/sw.js.br +0 -0
- package/dist/web/sw.js.gz +0 -0
- package/npm-shrinkwrap.json +114 -598
- package/package.json +3 -3
- package/dist/web/assets/Chat-BZ4Kv_y0.js +0 -73
- package/dist/web/assets/Chat-BZ4Kv_y0.js.br +0 -0
- package/dist/web/assets/Chat-BZ4Kv_y0.js.gz +0 -0
- package/dist/web/assets/ModelSheet-CrgB7jGC.js +0 -1
- package/dist/web/assets/ModelSheet-CrgB7jGC.js.br +0 -0
- package/dist/web/assets/ModelSheet-CrgB7jGC.js.gz +0 -0
- package/dist/web/assets/Settings-BYSfCOfJ.js +0 -3
- package/dist/web/assets/Settings-BYSfCOfJ.js.br +0 -0
- package/dist/web/assets/Settings-BYSfCOfJ.js.gz +0 -0
- package/dist/web/assets/index-DTXoHe9U.js +0 -30
- package/dist/web/assets/index-DTXoHe9U.js.br +0 -0
- package/dist/web/assets/index-DTXoHe9U.js.gz +0 -0
- package/dist/web/assets/index-DYo6H59g.css +0 -2
- package/dist/web/assets/index-DYo6H59g.css.br +0 -0
- package/dist/web/assets/index-DYo6H59g.css.gz +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,204 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.4.0
|
|
4
|
+
|
|
5
|
+
Files, changes and side chats as in Claude Desktop, workflows and `!` commands you can watch, and
|
|
6
|
+
your usage from every app.
|
|
7
|
+
|
|
8
|
+
### Highlights
|
|
9
|
+
|
|
10
|
+
- **Changes and files.** See what each turn changed (T1, T2…, numbered and counted as Claude
|
|
11
|
+
Code's `/diff` does until a compaction, from its own record, so also outside git), what is
|
|
12
|
+
uncommitted, or everything since your branch split from main, with diffs, and Rewind code where
|
|
13
|
+
Claude Code kept a checkpoint. Search the folder by name or in the text, and read a file with
|
|
14
|
+
line numbers, Markdown and HTML previewed. A file a step names, or a `path:line` in a reply,
|
|
15
|
+
opens at its line, and under a turn that edited files "3 files changed" opens them. On a phone
|
|
16
|
+
it is a view of its own that the back gesture steps through; on a computer it sits beside the
|
|
17
|
+
conversation from 1024px wide.
|
|
18
|
+
- **Side chats.** `/btw`, Cmd/Ctrl+; or Side chat in the session menu asks something on the side,
|
|
19
|
+
as in Claude Desktop. Claude answers from a read-only copy of the session (Read, Grep and Glob,
|
|
20
|
+
no MCP servers, never Bypass), and is told so with each question, as in Desktop. Nothing goes
|
|
21
|
+
back to the session, which keeps working. It sits beside the conversation from 1024px wide,
|
|
22
|
+
taking turns with Changes and files, and is a sheet on a phone. Side chats are Claude Code
|
|
23
|
+
sessions titled "Side chat", kept out of the session list (List options > Side chats shows them),
|
|
24
|
+
and continue in the CLI and Desktop; opened from the list, one keeps its box for questions only.
|
|
25
|
+
- **Quote.** Select text in a reply, a step's output or a file and tap Quote. The quote waits
|
|
26
|
+
above the message box with your draft and goes above your words as a `>` quote; lines of a file
|
|
27
|
+
carry where they are, as `src/app.ts:7-8`.
|
|
28
|
+
- **Live `!` commands.** Output as it comes, with Stop, for up to 30 minutes. When a command ends,
|
|
29
|
+
Claude answers it, as in the CLI, unless `respondToBashCommands` is false. Commands are written
|
|
30
|
+
the way Claude Code writes them, so the terminal and Desktop show Pelican's, and Pelican shows
|
|
31
|
+
theirs.
|
|
32
|
+
- **Usage and activity.** Settings > Usage and activity shows your Claude Code usage on this
|
|
33
|
+
computer, from every app: tokens of each kind over 7 days, 30 days or all time, per day,
|
|
34
|
+
sessions, active days and streaks, and where they went by project, model, app and session, with
|
|
35
|
+
a few highlights. On a plan its limits are at the top; on an API key or a provider, the cost
|
|
36
|
+
Claude Code estimates. Each reply counts once, also when it was copied into a side chat or a
|
|
37
|
+
branch; Claude Code's `/stats` counts each content block, so its totals are higher. The session
|
|
38
|
+
menu shows what that session used.
|
|
39
|
+
- **Workflows.** A workflow (Claude Code's Workflow tool) shows as a card, as Claude Code shows
|
|
40
|
+
one, instead of its script's first line: its name, Running or how it ended with its agents and
|
|
41
|
+
tokens, its phases one a line (Review · 3 of 5 done) opening into their agents and each agent's
|
|
42
|
+
steps, the script and the result. It is live, with Stop, in sessions Pelican runs, and read from
|
|
43
|
+
the run's folder for other apps'; its end, also one that came while Claude worked (those were
|
|
44
|
+
lost), leads back to the card. Asked to run one, the approval shows its phases, the args its
|
|
45
|
+
script runs with and the file it runs.
|
|
46
|
+
|
|
47
|
+
### Changes in behavior
|
|
48
|
+
|
|
49
|
+
- Line comments go with your next message in the session they were written in, before your words,
|
|
50
|
+
as in Claude Desktop, or on their own with Cmd/Ctrl+Enter, instead of Add to message. They are
|
|
51
|
+
kept across reloads and forgotten on sign-out.
|
|
52
|
+
- Transcript views are Claude Desktop's: Normal, Thinking and Verbose, and Ctrl+O steps through
|
|
53
|
+
them. Thinking shows in a session's menu once Claude has thought there. A session set to Summary
|
|
54
|
+
opens in Normal.
|
|
55
|
+
- A `!` command may run 30 minutes instead of two, and Claude answers it when it ends, which is a
|
|
56
|
+
turn like a prompt. A command you stop gets no answer, and one still running when Pelican stops
|
|
57
|
+
gets up to 15 seconds to tidy up, then ends with it; Ctrl+C again ends it at once. Under launchd
|
|
58
|
+
it gets what the login item leaves: `pelican service install` now asks launchd for 20 seconds,
|
|
59
|
+
where it gave 5.
|
|
60
|
+
- Claude gets a `!` command's output as Claude Code's bash mode gives it, in the record Claude
|
|
61
|
+
Code writes for the same output: stdout and stderr together in the order they were written, as
|
|
62
|
+
much as Claude Code reads back of it, 30,000 bytes or what `bashOutputMaxChars` sets (where that
|
|
63
|
+
is unset, BASH_MAX_OUTPUT_LENGTH, 1 to 150,000), instead of up to 200,000 characters of each. A
|
|
64
|
+
failed one is cut there. One that went well and printed more is saved in the session's
|
|
65
|
+
`tool-results` folder, where Claude Code saves one, up to 64MB, and Claude gets its start and
|
|
66
|
+
where it is; so is one whose text is longer than Claude gets inline (30,000 characters, or what
|
|
67
|
+
`bashOutputMaxChars` sets). Exit code 1 from grep, diff, test or find is an answer, not a
|
|
68
|
+
failure, when that command is the line's last statement as Claude Code's parser reads it (not
|
|
69
|
+
in a subshell or a `{ }` group; a comment is none). The record no longer adds the exit code, or
|
|
70
|
+
that something runs on in the background, as Claude Code's adds neither.
|
|
71
|
+
- What Claude changes in answer to a `!` command is that command's turn in Changes, as in `/diff`;
|
|
72
|
+
a message of files alone starts a turn, a picture sent without words none, and a new file's
|
|
73
|
+
lines count as `/diff` counts them. After a compaction `/diff` numbers from 1 again, and it reads
|
|
74
|
+
only the last 4,096 messages, so in a longer stretch its T1 is a later turn; Pelican, which shows
|
|
75
|
+
every turn, counts on from the first.
|
|
76
|
+
- A renamed file's diff shows the rename and what changed in it, instead of the whole file as new;
|
|
77
|
+
one renamed whole says "Renamed from …, unchanged".
|
|
78
|
+
- Push and Create PR, on the branch line, show only where the repository has a remote with an
|
|
79
|
+
address, not one that only a system or managed git config names (a fetch line for every
|
|
80
|
+
repository).
|
|
81
|
+
- Changes and files docks from 1024px wide instead of 1440px; below 1280px the session list folds
|
|
82
|
+
away while it is open, and Cmd/Ctrl+K brings it back.
|
|
83
|
+
- Cmd/Ctrl+\ closes Changes and files when pressed in it, as it closes the side chat and as Close
|
|
84
|
+
pane does in Claude Desktop; closed, the pane gives the keys to the button that opens it.
|
|
85
|
+
- The keyboard shortcuts (Cmd/Ctrl+/) list Changes and files (Cmd/Ctrl+Shift+D), Close pane
|
|
86
|
+
(Cmd/Ctrl+\) and Send comments (Cmd/Ctrl+Enter), and call Ctrl+O Transcript view.
|
|
87
|
+
- Commit, Push and Create PR, on the branch line, put a request to Claude in the message box, so
|
|
88
|
+
your rules, hooks and attribution apply. Pelican runs no git that changes anything.
|
|
89
|
+
|
|
90
|
+
### Sessions and the list
|
|
91
|
+
|
|
92
|
+
- Claude Desktop's side chats stay out of the list also once Claude Code has given them the
|
|
93
|
+
session's title again, as it does when their Claude exits; most showed as more sessions with
|
|
94
|
+
that title.
|
|
95
|
+
|
|
96
|
+
### The conversation
|
|
97
|
+
|
|
98
|
+
- An approval says Claude's few words on a command once, also when Claude Code passes them as its
|
|
99
|
+
own line too.
|
|
100
|
+
- A failed request at the end of the conversation offers Retry, which sends the prompt again with
|
|
101
|
+
its files, or Compact when the conversation is too long.
|
|
102
|
+
- Scheduled check-ins have Cancel, which asks Claude to cancel them.
|
|
103
|
+
- An MCP server that needs you to sign in says where: `claude mcp login <name>` in a terminal on
|
|
104
|
+
the computer, or claude.ai's connectors page.
|
|
105
|
+
- Approval notifications have Allow and Deny where the device shows buttons on notifications
|
|
106
|
+
(Chrome on a computer or Android), for a command a notification shows whole: printable ASCII with
|
|
107
|
+
one space between words, on one line, short enough for two lines of the narrowest notification
|
|
108
|
+
(about 50 characters, fewer when they are wide), and on Android, whose pop-up shows one line
|
|
109
|
+
beside the buttons, for that one line (about 20). A notification shows the command itself, not
|
|
110
|
+
Claude's description of it; edits, other tools, other commands, questions and plans open the
|
|
111
|
+
session.
|
|
112
|
+
- Notifications and check-ins keep emoji whole, also those made of several pictures, and still
|
|
113
|
+
leave out characters that hide text or turn it around, now also from a notification's title, the
|
|
114
|
+
session's. Their text is cut between characters as they show, and sooner where those hold many
|
|
115
|
+
code points (one letter can carry any number of accents), so a notification stays within the
|
|
116
|
+
4 KB a push service carries.
|
|
117
|
+
- Export as Markdown has the conversation as it shows here: `!` and `/` commands as typed, as
|
|
118
|
+
code, with their output; the files and pictures sent with a prompt; Claude Code's own lines,
|
|
119
|
+
such as a background task's note, Interrupted, a failed request (naming the computer, as the
|
|
120
|
+
conversation does) or a hook's word, and a command that failed marked so; and none of
|
|
121
|
+
the tags, notes and summaries Claude Code and Pelican add for Claude, such as a side chat's note
|
|
122
|
+
with each question.
|
|
123
|
+
- The session menu shows the session's tokens, the share from the cache, its models and
|
|
124
|
+
compactions, and its cost where Claude Code counts one.
|
|
125
|
+
- A finished `!` command shows the end of its output, as it did while it ran; Show all shows the
|
|
126
|
+
start, and for one too long for the conversation what Claude Code saved of it (up to 64MB), from
|
|
127
|
+
that file, a page at a time, also in a branch that copied it. One that printed nothing shows the
|
|
128
|
+
command alone, and one that failed says Failed, or Stopped, where its live card said how it
|
|
129
|
+
ended; a record from before (Claude Code before 2.1.80, Pelican before 0.4) says so only where
|
|
130
|
+
it noted it. A running one's Stop is named for it.
|
|
131
|
+
- Claude's answer to a background task's note shows after the note, not in the reply before it.
|
|
132
|
+
- A message that does not go comes back to the message box, files and all, above anything typed
|
|
133
|
+
since. A `!` or `/` command comes back only into an empty box; with words or files there, it
|
|
134
|
+
waits above the box, Not sent, with Put back, as does a message, files and all, that comes back
|
|
135
|
+
while a command is typed. A `/` command goes with its words alone: files in the box wait for the
|
|
136
|
+
next message, as quotes do. What waits stays across reloads, and in a new session goes on with
|
|
137
|
+
the session once it starts, line comments too. Put back brings words and files back together, or, where they cannot
|
|
138
|
+
share the box, swaps them with what is there, which waits in its place, Set aside. One sent for
|
|
139
|
+
you (Send now, Compact, Retry, Cancel) leaves the box as it is.
|
|
140
|
+
- A path or "files changed" tapped while the side chat is open puts it away and opens Changes and
|
|
141
|
+
files.
|
|
142
|
+
- Side chat in the session menu leaves the keys in the side chat's box, which, beside the
|
|
143
|
+
conversation on a tablet, keeps clear of the home indicator, level with the conversation's.
|
|
144
|
+
Quotes that do not fit above the message box fade at its edge, and removing one with the
|
|
145
|
+
keyboard moves on to the next.
|
|
146
|
+
- A conversation opens without the code of Changes and files, which follows once it is up, and
|
|
147
|
+
Settings without the usage page.
|
|
148
|
+
|
|
149
|
+
### Changes and files
|
|
150
|
+
|
|
151
|
+
- Search in files shows each hit where it is on its line, after a "…" when it is far along,
|
|
152
|
+
marked in amber.
|
|
153
|
+
- A file's Quote and Copy sit in a row of their own under the file, so nothing scrolls beneath
|
|
154
|
+
them.
|
|
155
|
+
- On a touch screen, search results and a step's file name are a finger tall, and the lowest row
|
|
156
|
+
of Changes and files (Quote and Copy, Send now, or the bar saying Claude needs you) keeps clear
|
|
157
|
+
of the home indicator, on a phone and beside the conversation on a tablet.
|
|
158
|
+
- Esc in a comment on a file gives the keys back to the file, as on a diff, so the next Esc closes
|
|
159
|
+
the view.
|
|
160
|
+
|
|
161
|
+
### Security
|
|
162
|
+
|
|
163
|
+
- In a folder kept to your settings only, a `!` command runs git as Claude Code does there, with
|
|
164
|
+
none of the repository's own programs (its file-system monitor, filters or hooks folder).
|
|
165
|
+
- Changes and files reads only regular files inside the folder it is asked about (the session's),
|
|
166
|
+
links followed and checked. Downloads come as inert attachments. Search runs the ripgrep inside
|
|
167
|
+
Claude Code with no config, an empty environment, no git and no links followed.
|
|
168
|
+
- Show all on a long `!` command reads the file Claude Code saved its output in by that file's
|
|
169
|
+
name alone, from the session's own `tool-results` folder, or, for a record a branch copied, from
|
|
170
|
+
that of the session its row says it came from, when the record's path names that session: a
|
|
171
|
+
regular file reached through no link and with no other name.
|
|
172
|
+
- A page in Files runs its scripts only after Run, and again only after another Run once it has
|
|
173
|
+
been rewritten; a page opened straight from another file never starts running.
|
|
174
|
+
- A side chat only reads, asks for nothing, and takes no `/` or `!` commands. A side chat branched
|
|
175
|
+
from one of its questions is one too.
|
|
176
|
+
- Notification buttons go through the same checks as the page, and Allow is offered only for a
|
|
177
|
+
command a notification shows in full: printable ASCII with one space between words, on one line,
|
|
178
|
+
that fits two lines of the narrowest notification in its widest letters, and on Android, whose
|
|
179
|
+
pop-up shows one line beside the buttons, that one line.
|
|
180
|
+
|
|
181
|
+
### Site, docs and project
|
|
182
|
+
|
|
183
|
+
- The demo's files have their text, and the files its conversations name open at the lines they
|
|
184
|
+
name.
|
|
185
|
+
- The docs cover Changes and files, side chats, quotes, live `!` commands, the views and the
|
|
186
|
+
usage page, and the coverage table moves side questions, views, quotes and Create PR to Yes.
|
|
187
|
+
- On a phone, the website leads with the two buttons and the install command, then shows the app
|
|
188
|
+
in the same phone frame as on a computer, whole when you scroll, instead of a cropped card.
|
|
189
|
+
- The browser smoke test checks the docked pane at 1024, 1280 and 1440px and the side chat pane at
|
|
190
|
+
1024px, where it asks a question, and opens older sessions at one size only, to keep CI quick.
|
|
191
|
+
|
|
192
|
+
## 0.3.1
|
|
193
|
+
|
|
194
|
+
- New sessions start at High effort until you pick another in Settings (New sessions start with >
|
|
195
|
+
Model); picking Default there leaves the effort to Claude Code, as before. Sessions that already
|
|
196
|
+
ran keep what they ran with, and a model without effort levels gets none.
|
|
197
|
+
- On a computer, Changes and files docked beside the conversation is no longer cut off at the
|
|
198
|
+
right edge when the conversation holds long lines (the column grew to fit them).
|
|
199
|
+
- The website's phone pictures show the whole screen, the message box included.
|
|
200
|
+
- qrcode-generator 2 and esbuild 0.28 (the QR codes are the same, checked bit for bit).
|
|
201
|
+
|
|
3
202
|
## 0.3.0
|
|
4
203
|
|
|
5
204
|
Every Claude Code session on your computer, on your phone. This release follows a ten-angle audit
|
package/README.md
CHANGED
|
@@ -66,12 +66,15 @@ The docs cover [an SSH tunnel or your own proxy](https://ki-seki.github.io/pelic
|
|
|
66
66
|
every compaction. When another app is working on one, or waits for you there, Pelican says which
|
|
67
67
|
app; once it is idle, continue it here.
|
|
68
68
|
- **All of Claude Code.** Approvals with the diff, plans and questions, steer or queue while Claude
|
|
69
|
-
works, `!` commands, `/` commands and skills, `@` files, every
|
|
70
|
-
and branch, subagents and background tasks, MCP servers
|
|
69
|
+
works, side chats, `!` commands with their output live, `/` commands and skills, `@` files, every
|
|
70
|
+
model and permission mode, rewind and branch, subagents and background tasks, MCP servers.
|
|
71
71
|
- **What Claude makes, in place.** Charts and diagrams Claude draws and pages it writes show in the
|
|
72
72
|
conversation, as still pictures until you tap Run.
|
|
73
|
-
- **
|
|
74
|
-
your
|
|
73
|
+
- **Changes and files, as in Claude Desktop.** What each turn changed, what is uncommitted, or
|
|
74
|
+
everything since your branch split, with diffs. Search and read the folder; a path in a reply
|
|
75
|
+
opens the file at its line. Comment on a line or quote it, and Create PR asks Claude.
|
|
76
|
+
- **Your usage, from every app.** Tokens, sessions and streaks by project, model and app, with your
|
|
77
|
+
plan's limits, or the cost Claude Code estimates on an API key.
|
|
75
78
|
- **Made for a phone, good on a computer.** One hand, dictation, a notification when Claude needs
|
|
76
79
|
you or finishes, and a Home Screen icon. On a wide screen, the list, the conversation and the
|
|
77
80
|
changes sit side by side.
|
|
@@ -101,8 +104,7 @@ Remote Control can answer a prompt waiting in your terminal; Pelican cannot. Mor
|
|
|
101
104
|
Pelican runs Claude Code itself, so your settings, `CLAUDE.md`, hooks, skills, subagents and MCP
|
|
102
105
|
servers work as they do in the terminal, and so does any login: a Claude plan, an API key, Bedrock,
|
|
103
106
|
Google Cloud or Microsoft Foundry. What Pelican does not do: Remote Control, cloud sessions, a
|
|
104
|
-
worktree for each new session,
|
|
105
|
-
hand. [The full table](https://ki-seki.github.io/pelican/docs.html#coverage) goes through Claude
|
|
107
|
+
worktree for each new session, a terminal of its own, or editing files by hand. [The full table](https://ki-seki.github.io/pelican/docs.html#coverage) goes through Claude
|
|
106
108
|
Code's features one by one.
|
|
107
109
|
|
|
108
110
|
## Security
|