muse-cli 0.2.0__py3-none-any.whl

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.
@@ -0,0 +1,195 @@
1
+ Metadata-Version: 2.5
2
+ Name: muse-cli
3
+ Version: 0.2.0
4
+ Summary: Command-line client for your personal muse.ai AI agent: chat, automate, and manage side chats, feed, goals, ideas, and sessions from the terminal. No browser needed.
5
+ Project-URL: Homepage, https://github.com/nikships/muse-cli
6
+ Project-URL: Documentation, https://github.com/nikships/muse-cli#readme
7
+ Project-URL: Repository, https://github.com/nikships/muse-cli
8
+ Project-URL: Issues, https://github.com/nikships/muse-cli/issues
9
+ Project-URL: Changelog, https://github.com/nikships/muse-cli/releases
10
+ Project-URL: Protocol Notes, https://github.com/nikships/muse-cli/blob/main/docs/PROTOCOL.md
11
+ Author-email: Nik <mntechsurvey@gmail.com>
12
+ License-Expression: MIT
13
+ License-File: LICENSE
14
+ Keywords: agent,agent-skill,ai,ai-agent,ai-assistant,automation,chat,chatbot,cli,command-line,llm,muse,muse-ai,muse-cli,muse.ai,noise-protocol,personal-ai,personal-assistant,terminal,websocket
15
+ Classifier: Development Status :: 4 - Beta
16
+ Classifier: Environment :: Console
17
+ Classifier: Intended Audience :: Developers
18
+ Classifier: Intended Audience :: End Users/Desktop
19
+ Classifier: Operating System :: OS Independent
20
+ Classifier: Programming Language :: Python
21
+ Classifier: Programming Language :: Python :: 3
22
+ Classifier: Programming Language :: Python :: 3 :: Only
23
+ Classifier: Programming Language :: Python :: 3.10
24
+ Classifier: Programming Language :: Python :: 3.11
25
+ Classifier: Programming Language :: Python :: 3.12
26
+ Classifier: Programming Language :: Python :: 3.13
27
+ Classifier: Programming Language :: Python :: 3.14
28
+ Classifier: Topic :: Communications :: Chat
29
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
30
+ Classifier: Topic :: Terminals
31
+ Classifier: Topic :: Utilities
32
+ Requires-Python: >=3.10
33
+ Requires-Dist: curl-cffi>=0.11
34
+ Requires-Dist: noiseprotocol>=0.3
35
+ Requires-Dist: protobuf>=5.0
36
+ Description-Content-Type: text/markdown
37
+
38
+ <div align="center">
39
+
40
+ # muse-cli
41
+
42
+ Talk to your personal muse.ai AI agent from the terminal.
43
+
44
+ [![PyPI](https://img.shields.io/pypi/v/muse-cli?style=for-the-badge)](https://pypi.org/project/muse-cli/)
45
+ [![Python](https://img.shields.io/pypi/pyversions/muse-cli?style=for-the-badge)](https://pypi.org/project/muse-cli/)
46
+ [![Downloads](https://img.shields.io/pepy/dt/muse-cli?style=for-the-badge)](https://pepy.tech/project/muse-cli)
47
+ [![License: MIT](https://img.shields.io/github/license/nikships/muse-cli?style=for-the-badge)](https://github.com/nikships/muse-cli/blob/main/LICENSE)
48
+ [![GitHub stars](https://img.shields.io/github/stars/nikships/muse-cli?style=for-the-badge)](https://github.com/nikships/muse-cli/stargazers)
49
+
50
+ ![muse-cli hero](https://raw.githubusercontent.com/nikships/muse-cli/main/assets/hero.webp)
51
+
52
+ </div>
53
+
54
+ ## What is this?
55
+
56
+ A command-line client for your personal muse.ai AI agent: chat from the terminal, automate it with scripts, and manage side chats, feed, goals, ideas, and sessions without opening a browser. It speaks the app's own gateway protocol directly: HTTPS auth, then an encrypted Noise-XX WebSocket to your personal VM.
57
+
58
+ - **Chat from the shell:** send a message and get the agent's reply back as JSON.
59
+ - **Script it:** every command prints JSON, so it pipes into `jq`, cron jobs, and other AI agents.
60
+ - **Full coverage:** named commands for the common tasks, plus a `raw` escape hatch for all 258 gateway methods.
61
+ - **Agent-ready:** ships an agent skill so coding agents can drive your muse.ai agent for you.
62
+
63
+ ## Quick Start
64
+
65
+ ```bash
66
+ uv tool install muse-cli # or: pipx install muse-cli / pip install muse-cli
67
+ ```
68
+
69
+ Then log in and check the connection:
70
+
71
+ ```bash
72
+ # 1. Log in to https://muse.ai/ in Chrome
73
+ # 2. Export your session (one time; re-run when it expires):
74
+ muse-cli auth export
75
+
76
+ muse-cli status
77
+ ```
78
+
79
+ Want the agent skill too? The installer sets up the CLI and copies the skill
80
+ to `~/.agents/skills/muse-cli`:
81
+
82
+ ```bash
83
+ curl -fsSL https://raw.githubusercontent.com/nikships/muse-cli/main/install.sh | bash
84
+ ```
85
+
86
+ Upgrade with `uv tool upgrade muse-cli`, remove with `uv tool uninstall muse-cli`.
87
+
88
+ The command is `muse-cli`, not `muse`, because `muse` clashes with Muse Code
89
+ on many machines.
90
+
91
+ ## Usage
92
+
93
+ ```bash
94
+ muse-cli threads # main chat + side chats
95
+ muse-cli history --limit 5 # recent messages
96
+ muse-cli history --thread <session-id> --limit 5 # one side chat
97
+ muse-cli send "summarize my unread" --wait 120 # send + wait for the reply
98
+ muse-cli watch --timeout 60 # tail live agent events
99
+
100
+ muse-cli feed --limit 5
101
+ muse-cli feed-react <unit-id> love
102
+ muse-cli goals
103
+ muse-cli ideas
104
+ muse-cli idea-exec <idea-id> # agent acts on the idea
105
+
106
+ muse-cli session-start --title "trip planning" # new side chat
107
+ muse-cli session-rename <id> "new title"
108
+ muse-cli session-archive <id> # also: pin, unpin, unarchive, delete
109
+ muse-cli seen <thread-id>
110
+ muse-cli wake
111
+ muse-cli raw <method> --body '{}' # escape hatch: any of 258 gateway methods
112
+ ```
113
+
114
+ Every command prints JSON. Your VM is auto-discovered from your session, and a
115
+ random device id is generated on first run.
116
+
117
+ Pipe it into other tools:
118
+
119
+ ```bash
120
+ muse-cli send "what's on my calendar today?" | jq -r .reply.text
121
+ ```
122
+
123
+ ## How it works
124
+
125
+ ![how muse-cli connects](https://raw.githubusercontent.com/nikships/muse-cli/main/assets/how-it-works.webp)
126
+
127
+ ![muse-cli connection flow](https://raw.githubusercontent.com/nikships/muse-cli/main/assets/flow.webp)
128
+
129
+ See [docs/PROTOCOL.md](https://github.com/nikships/muse-cli/blob/main/docs/PROTOCOL.md)
130
+ for the full protocol notes, including the method table and the server quirks
131
+ found during reverse engineering.
132
+
133
+ ## Documentation
134
+
135
+ | Resource | Description |
136
+ |----------|-------------|
137
+ | [skills/muse-cli/SKILL.md](https://github.com/nikships/muse-cli/blob/main/skills/muse-cli/SKILL.md) | Agent skill: install check, auth setup, command reference |
138
+ | [docs/PROTOCOL.md](https://github.com/nikships/muse-cli/blob/main/docs/PROTOCOL.md) | Gateway protocol reference: auth chain, Noise transport, framing, method quirks |
139
+ | [routes.json](https://github.com/nikships/muse-cli/blob/main/src/muse_cli/routes.json) | All 258 gateway methods with paths and services |
140
+ | `muse-cli raw --help` | Escape hatch for calling any gateway method directly |
141
+
142
+ ## Development
143
+
144
+ ```bash
145
+ git clone https://github.com/nikships/muse-cli.git
146
+ cd muse-cli
147
+ uv run muse-cli --help
148
+ ```
149
+
150
+ ```
151
+ muse-cli/
152
+ assets/ README artwork (generated with Muse Image)
153
+ docs/PROTOCOL.md protocol reference for re-derivation
154
+ skills/muse-cli/ agent skill
155
+ src/muse_cli/
156
+ cli.py argument parsing and all commands
157
+ gateway.py gateway client (auth, Noise transport, subscriptions)
158
+ routes.json 258 gateway methods extracted from the web client
159
+ desc0.bin protobuf descriptors for the wire framing
160
+ desc1.bin
161
+ install.sh CLI + skill installer
162
+ pyproject.toml
163
+ ```
164
+
165
+ ## Setup notes
166
+
167
+ - `auth export` reads cookies from a running Chrome via
168
+ [agent-browser](https://github.com/nikships/foundry) (`npm i -g agent-browser`).
169
+ No Chrome? Copy your `muse.ai` cookies into `~/.config/muse-cli/cookies.txt`
170
+ by hand (Netscape jar or `name=value; ...` format, needs `hatch_sess`).
171
+ - Cookies live at `~/.config/muse-cli/cookies.txt` (mode 600). Access and
172
+ gateway tokens are fetched fresh on every run, nothing long-lived is stored.
173
+ - Respect muse.ai's terms and rate limits. Internal APIs are unversioned and
174
+ can change; if calls fail, re-derive from a fresh app bundle.
175
+
176
+ ## Contributing
177
+
178
+ Issues and PRs welcome. If the protocol drifts, the most useful contribution
179
+ is a note of which method broke and the new server error text.
180
+
181
+ <a href="https://github.com/nikships/muse-cli/graphs/contributors">
182
+ <img src="https://contrib.rocks/image?repo=nikships/muse-cli" />
183
+ </a>
184
+
185
+ ## License
186
+
187
+ MIT. See [LICENSE](https://github.com/nikships/muse-cli/blob/main/LICENSE).
188
+
189
+ ---
190
+
191
+ <div align="center">
192
+
193
+ [![Star History Chart](https://api.star-history.com/svg?repos=nikships/muse-cli&type=Date)](https://star-history.com/#nikships/muse-cli&Date)
194
+
195
+ </div>
@@ -0,0 +1,12 @@
1
+ muse_cli/__init__.py,sha256=ND8stB9KHebfiRWiEvHu4qa5fT3HfyrgoBSHfczb9vk,97
2
+ muse_cli/__main__.py,sha256=bYt9eEaoRQWdejEHFD8REx9jxVEdZptECFsV7F49Ink,30
3
+ muse_cli/cli.py,sha256=UTwWeU32anlCmyuwA0nRSE_pNL7DinBGeT4apj9dW8g,20863
4
+ muse_cli/desc0.bin,sha256=VHmiDNWpv4F8Knuk7sVrNU2FdvVl2Qlv0qOoIj6CDQA,230
5
+ muse_cli/desc1.bin,sha256=XqPyCThqTUfSjuBkc6Le-tNVNnJb8tPYR9MbBOwaiGg,1006
6
+ muse_cli/gateway.py,sha256=7DTMeXuzEuwpi2lR5cdY95Smev1FY1nBLCvs5lf9U6U,13251
7
+ muse_cli/routes.json,sha256=8T5-xjVI7dkxm2Vb4f_IjjWA8ZtPTwFqrsY9VT7V8DM,26811
8
+ muse_cli-0.2.0.dist-info/METADATA,sha256=VwlIbT0UQNfxFYAIeZOAlXX-yTGO25ipGy9MTKNjmGU,8102
9
+ muse_cli-0.2.0.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
10
+ muse_cli-0.2.0.dist-info/entry_points.txt,sha256=_WwRzB-LF0TwfWcEtf33x2H8zpCmphvrNZzlZgwPCOQ,47
11
+ muse_cli-0.2.0.dist-info/licenses/LICENSE,sha256=7R6cOGVZpdXw7tFQp9UqF1A2vyqIbt2Dyd2_jYly67w,1066
12
+ muse_cli-0.2.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.32.4
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ muse-cli = muse_cli.cli:main
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Nik Ships
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.