pelican-cc 0.0.0-stage → 0.2.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.
- package/CHANGELOG.md +53 -0
- package/LICENSE +21 -0
- package/README.md +80 -2
- package/dist/server/index.js +4226 -0
- package/dist/server/index.js.map +7 -0
- package/dist/web/apple-touch-icon.png +0 -0
- package/dist/web/assets/index-BU_IB-o3.js +81 -0
- package/dist/web/assets/index-c7q8fFDv.css +2 -0
- package/dist/web/badge-96.png +0 -0
- package/dist/web/icon-192.png +0 -0
- package/dist/web/icon-512.png +0 -0
- package/dist/web/icon-maskable-512.png +0 -0
- package/dist/web/icon.svg +1 -0
- package/dist/web/index.html +22 -0
- package/dist/web/manifest.webmanifest +16 -0
- package/dist/web/sw.js +40 -0
- package/package.json +77 -4
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.2.1
|
|
4
|
+
|
|
5
|
+
The first public release.
|
|
6
|
+
|
|
7
|
+
- Runs on its own: `npm install -g pelican-cc`, then `pelican`. It listens on `127.0.0.1` and
|
|
8
|
+
every browser signs in, also on this computer: with the link Pelican prints (an access token,
|
|
9
|
+
as in Jupyter; `pelican token` prints it again) or with a password (`pelican password`).
|
|
10
|
+
`--no-auth` is for when a proxy in front already authenticates. Requests must come from
|
|
11
|
+
Pelican's own page, under a known host name, and no other site may frame it. See
|
|
12
|
+
[SECURITY.md](SECURITY.md).
|
|
13
|
+
- Images in a reply load only from Pelican; pages and visuals Claude makes cannot reach any server
|
|
14
|
+
but the public CDNs. A folder Claude has not worked in loads only your user settings when
|
|
15
|
+
Pelican looks at it, and git does not run there; where Claude has worked, git starts no hooks,
|
|
16
|
+
file-system monitor, external diff or text converter (your filters, such as Git LFS, run as in
|
|
17
|
+
your own git). The QR code that opens Pelican on a phone carries a one-time code.
|
|
18
|
+
- `pelican --demo` shows made-up sessions, with nothing of yours involved.
|
|
19
|
+
- Every session's whole history, back past each compaction, with a divider where the context was
|
|
20
|
+
compacted; older pages load as you scroll up.
|
|
21
|
+
- Three ways to read a session (Summary, Normal, Verbose), and a settings page: theme, the default
|
|
22
|
+
view, what Enter does, how the session list is grouped and how dense it is, notifications.
|
|
23
|
+
- A menu for each session: rename, branch, export as Markdown, delete, copy the command that
|
|
24
|
+
continues it in a terminal. Edit an earlier prompt in place, images and all, and send it again:
|
|
25
|
+
only then does the conversation branch, in one step that leaves nothing behind if it fails.
|
|
26
|
+
- Claude Desktop's side chats are folded out of the list (Settings shows them); background tasks
|
|
27
|
+
fold into one row when there are several. Archive puts a session away from the list without
|
|
28
|
+
touching it.
|
|
29
|
+
- A session open in another app too says so; before sending, Pelican catches up with what was
|
|
30
|
+
said there instead of continuing an older version of the conversation.
|
|
31
|
+
- Editing the last prompt replaces it in place, as rewinding does in Claude Code; an earlier
|
|
32
|
+
prompt still branches. Model, effort, fast mode and ultracode changed while Claude works apply
|
|
33
|
+
at once, and a choice not yet used stays with the session.
|
|
34
|
+
- Settings shows the plan's usage as Claude Code's `/usage` does: the 5-hour and weekly windows,
|
|
35
|
+
or, on Team and Enterprise, the month's extra usage against its cap.
|
|
36
|
+
- `/` commands and `@` files in the composer, ultracode next to effort and fast mode, the task list
|
|
37
|
+
pinned above the composer, how full the context is, and each turn's time, tokens and cost.
|
|
38
|
+
- Images open full screen. A failed send gives the text back to edit.
|
|
39
|
+
- While Claude works, a message steers it (read at its next step) or waits for the turn: tap the
|
|
40
|
+
word next to Send. Messages sent mid-turn, from any app, show where Claude read them.
|
|
41
|
+
- `!` commands run in the session's folder; Claude reads the output with the next message.
|
|
42
|
+
- Changes and files: every changed file with its diff, and the folder to browse and mention.
|
|
43
|
+
- Rewind code to before any prompt; open the steps a subagent took; MCP servers with their
|
|
44
|
+
status; the plan's usage limits; background tasks with Stop; suggested next prompts.
|
|
45
|
+
- Charts and diagrams Claude Desktop draws, pages Claude writes, files it sends, and `html` or
|
|
46
|
+
`svg` blocks render in place, in a sandboxed frame.
|
|
47
|
+
- Dictation in the composer, and a QR code to open Pelican on your phone.
|
|
48
|
+
- Scrolling up while Claude streams stays where you put it; sending brings the end back into view.
|
|
49
|
+
|
|
50
|
+
## 0.1.0
|
|
51
|
+
|
|
52
|
+
A phone-first web app for Claude Code sessions: the session list, live chat with approvals,
|
|
53
|
+
images and files, notifications, and sessions other apps are working on.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Shichao Song
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,81 @@
|
|
|
1
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="https://raw.githubusercontent.com/Ki-Seki/pelican/main/docs/logo.svg" width="64" height="64" alt="">
|
|
3
|
+
</p>
|
|
2
4
|
|
|
3
|
-
|
|
5
|
+
<h1 align="center">Pelican</h1>
|
|
6
|
+
|
|
7
|
+
<p align="center">
|
|
8
|
+
<b>Claude Code, in your pocket.</b><br>
|
|
9
|
+
A phone-first web app for the Claude Code on your computer. Follow every session live, answer Claude, approve its edits.
|
|
10
|
+
</p>
|
|
11
|
+
|
|
12
|
+
<p align="center">
|
|
13
|
+
<a href="https://ki-seki.github.io/pelican/demo/"><b>Live demo</b></a> ·
|
|
14
|
+
<a href="https://ki-seki.github.io/pelican/">Website</a> ·
|
|
15
|
+
<a href="https://ki-seki.github.io/pelican/docs.html">Docs</a>
|
|
16
|
+
</p>
|
|
17
|
+
|
|
18
|
+
<p align="center">
|
|
19
|
+
<a href="https://www.npmjs.com/package/pelican-cc"><img src="https://img.shields.io/npm/v/pelican-cc?color=0e7490" alt="npm"></a>
|
|
20
|
+
<a href="https://github.com/Ki-Seki/pelican/actions/workflows/ci.yml"><img src="https://github.com/Ki-Seki/pelican/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
21
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-0e7490" alt="MIT license"></a>
|
|
22
|
+
</p>
|
|
23
|
+
|
|
24
|
+
<a href="https://ki-seki.github.io/pelican/demo/">
|
|
25
|
+
<picture>
|
|
26
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/Ki-Seki/pelican/main/docs/shots/phone-dark.png">
|
|
27
|
+
<img alt="Pelican on a phone: the session list, a session waiting for approval of an edit, and a chart Claude drew" src="https://raw.githubusercontent.com/Ki-Seki/pelican/main/docs/shots/phone-light.png">
|
|
28
|
+
</picture>
|
|
29
|
+
</a>
|
|
30
|
+
|
|
31
|
+
## Why Pelican
|
|
32
|
+
|
|
33
|
+
- **Every session, wherever you started it.** The terminal, Claude Desktop, your editor: Pelican
|
|
34
|
+
reads Claude Code's own transcripts, so every session is there, live while it runs, with its
|
|
35
|
+
whole history back past each compaction. No wrapper command, no flag to remember.
|
|
36
|
+
- **Nothing in between.** One small process on your computer: no account, no relay server, no copy
|
|
37
|
+
of your sessions. Reach it over Tailscale, an SSH tunnel or your own proxy.
|
|
38
|
+
- **All of Claude Code.** Approvals with the diff, steer or queue while Claude works, `!` commands,
|
|
39
|
+
changes and files, rewind code, branches, subagents, MCP servers, usage limits, every model and
|
|
40
|
+
mode, `/` commands and `@` files. Charts Claude draws and pages it writes render right in the
|
|
41
|
+
conversation. It runs on the official Agent SDK, so your login, settings, `CLAUDE.md`, skills and
|
|
42
|
+
MCP servers apply.
|
|
43
|
+
- **Made for a phone.** Calm and quick with one hand. A notification when Claude needs you,
|
|
44
|
+
dictation, and a Home Screen icon that opens it like an app.
|
|
45
|
+
|
|
46
|
+
<p align="center">
|
|
47
|
+
<img src="https://raw.githubusercontent.com/Ki-Seki/pelican/main/docs/shots/tour.gif" width="320" alt="A tour of Pelican on a phone: a chart and a page Claude made, rendered in place; an edit waiting for approval with its diff; a session another app is running">
|
|
48
|
+
</p>
|
|
49
|
+
|
|
50
|
+
## Quick start
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
npx pelican-cc --demo # made-up sessions; nothing of yours involved
|
|
54
|
+
npm install -g pelican-cc # Node 22.12+, with Claude Code signed in
|
|
55
|
+
pelican # prints the link that signs you in: http://localhost:7860/?token=…
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Then [use it from your phone](https://ki-seki.github.io/pelican/docs.html#phone); with Tailscale it
|
|
59
|
+
takes two commands.
|
|
60
|
+
|
|
61
|
+
## Docs
|
|
62
|
+
|
|
63
|
+
[Using Pelican](https://ki-seki.github.io/pelican/docs.html#using) ·
|
|
64
|
+
[configuration](https://ki-seki.github.io/pelican/docs.html#config) ·
|
|
65
|
+
[security](https://ki-seki.github.io/pelican/docs.html#security) ·
|
|
66
|
+
[how it works](https://ki-seki.github.io/pelican/docs.html#how) ·
|
|
67
|
+
[compared with Remote Control, Happy and CloudCLI](https://ki-seki.github.io/pelican/docs.html#compare)
|
|
68
|
+
|
|
69
|
+
## Contributing
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
npm ci && npm run dev # the server and the web app, both reloading on change
|
|
73
|
+
npm test && npm run typecheck
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
See [CONTRIBUTING.md](CONTRIBUTING.md). Security reports go through
|
|
77
|
+
[SECURITY.md](SECURITY.md).
|
|
78
|
+
|
|
79
|
+
## License
|
|
80
|
+
|
|
81
|
+
[MIT](LICENSE). Pelican is an independent project, not made by or affiliated with Anthropic.
|