vibe-remote 2.0.1__tar.gz

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.
Files changed (54) hide show
  1. vibe_remote-2.0.1/.gitignore +172 -0
  2. vibe_remote-2.0.1/LICENSE +21 -0
  3. vibe_remote-2.0.1/PKG-INFO +255 -0
  4. vibe_remote-2.0.1/README.md +222 -0
  5. vibe_remote-2.0.1/config/__init__.py +37 -0
  6. vibe_remote-2.0.1/config/paths.py +56 -0
  7. vibe_remote-2.0.1/config/v2_compat.py +74 -0
  8. vibe_remote-2.0.1/config/v2_config.py +205 -0
  9. vibe_remote-2.0.1/config/v2_sessions.py +73 -0
  10. vibe_remote-2.0.1/config/v2_settings.py +111 -0
  11. vibe_remote-2.0.1/core/__init__.py +0 -0
  12. vibe_remote-2.0.1/core/controller.py +712 -0
  13. vibe_remote-2.0.1/core/handlers/__init__.py +13 -0
  14. vibe_remote-2.0.1/core/handlers/command_handlers.py +342 -0
  15. vibe_remote-2.0.1/core/handlers/message_handler.py +359 -0
  16. vibe_remote-2.0.1/core/handlers/session_handler.py +233 -0
  17. vibe_remote-2.0.1/core/handlers/settings_handler.py +350 -0
  18. vibe_remote-2.0.1/docs/plans/v2/README.md +18 -0
  19. vibe_remote-2.0.1/main.py +101 -0
  20. vibe_remote-2.0.1/modules/__init__.py +0 -0
  21. vibe_remote-2.0.1/modules/agent_router.py +58 -0
  22. vibe_remote-2.0.1/modules/agents/__init__.py +38 -0
  23. vibe_remote-2.0.1/modules/agents/base.py +91 -0
  24. vibe_remote-2.0.1/modules/agents/claude_agent.py +344 -0
  25. vibe_remote-2.0.1/modules/agents/codex_agent.py +368 -0
  26. vibe_remote-2.0.1/modules/agents/opencode_agent.py +2178 -0
  27. vibe_remote-2.0.1/modules/agents/service.py +41 -0
  28. vibe_remote-2.0.1/modules/agents/subagent_router.py +136 -0
  29. vibe_remote-2.0.1/modules/claude_client.py +154 -0
  30. vibe_remote-2.0.1/modules/im/__init__.py +63 -0
  31. vibe_remote-2.0.1/modules/im/base.py +323 -0
  32. vibe_remote-2.0.1/modules/im/factory.py +60 -0
  33. vibe_remote-2.0.1/modules/im/formatters/__init__.py +4 -0
  34. vibe_remote-2.0.1/modules/im/formatters/base_formatter.py +639 -0
  35. vibe_remote-2.0.1/modules/im/formatters/slack_formatter.py +127 -0
  36. vibe_remote-2.0.1/modules/im/slack.py +1939 -0
  37. vibe_remote-2.0.1/modules/session_manager.py +138 -0
  38. vibe_remote-2.0.1/modules/settings_manager.py +536 -0
  39. vibe_remote-2.0.1/pyproject.toml +76 -0
  40. vibe_remote-2.0.1/ui/README.md +73 -0
  41. vibe_remote-2.0.1/ui/dist/assets/index-B36kr5vh.css +1 -0
  42. vibe_remote-2.0.1/ui/dist/assets/index-ZE4E1ImD.js +19 -0
  43. vibe_remote-2.0.1/ui/dist/assets/logo-BzryTZ7u.png +0 -0
  44. vibe_remote-2.0.1/ui/dist/index.html +17 -0
  45. vibe_remote-2.0.1/ui/dist/logo.png +0 -0
  46. vibe_remote-2.0.1/ui/dist/vite.svg +1 -0
  47. vibe_remote-2.0.1/vibe/__init__.py +6 -0
  48. vibe_remote-2.0.1/vibe/__main__.py +12 -0
  49. vibe_remote-2.0.1/vibe/_version.py +34 -0
  50. vibe_remote-2.0.1/vibe/api.py +410 -0
  51. vibe_remote-2.0.1/vibe/cli.py +594 -0
  52. vibe_remote-2.0.1/vibe/runtime.py +213 -0
  53. vibe_remote-2.0.1/vibe/templates/slack_manifest.json +65 -0
  54. vibe_remote-2.0.1/vibe/ui_server.py +343 -0
@@ -0,0 +1,172 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ share/python-wheels/
24
+ *.egg-info/
25
+ .installed.cfg
26
+ *.egg
27
+ MANIFEST
28
+
29
+ # PyInstaller
30
+ *.manifest
31
+ *.spec
32
+
33
+ # Installer logs
34
+ pip-log.txt
35
+ pip-delete-this-directory.txt
36
+
37
+ # Unit test / coverage reports
38
+ htmlcov/
39
+ .tox/
40
+ .nox/
41
+ .coverage
42
+ .coverage.*
43
+ .cache
44
+ nosetests.xml
45
+ coverage.xml
46
+ *.cover
47
+ *.py,cover
48
+ .hypothesis/
49
+ .pytest_cache/
50
+ cover/
51
+
52
+ # Translations
53
+ *.mo
54
+ *.pot
55
+
56
+ # Django stuff:
57
+ *.log
58
+ local_settings.py
59
+ db.sqlite3
60
+ db.sqlite3-journal
61
+
62
+ # Flask stuff:
63
+ instance/
64
+ .webassets-cache
65
+
66
+ # Scrapy stuff:
67
+ .scrapy
68
+
69
+ # Sphinx documentation
70
+ docs/_build/
71
+
72
+ # PyBuilder
73
+ .pybuilder/
74
+ target/
75
+
76
+ # Jupyter Notebook
77
+ .ipynb_checkpoints
78
+
79
+ # IPython
80
+ profile_default/
81
+ ipython_config.py
82
+
83
+ # pyenv
84
+ .python-version
85
+
86
+ # pipenv
87
+ Pipfile.lock
88
+
89
+ # poetry
90
+ poetry.lock
91
+
92
+ # pdm
93
+ .pdm.toml
94
+
95
+ # PEP 582
96
+ __pypackages__/
97
+
98
+ # Celery stuff
99
+ celerybeat-schedule
100
+ celerybeat.pid
101
+
102
+ # SageMath parsed files
103
+ *.sage.py
104
+
105
+ # Environments
106
+ .env
107
+ .venv
108
+ env/
109
+ venv/
110
+ ENV/
111
+ env.bak/
112
+ venv.bak/
113
+
114
+ # Spyder project settings
115
+ .spyderproject
116
+ .spyproject
117
+
118
+ # Rope project settings
119
+ .ropeproject
120
+
121
+ # mkdocs documentation
122
+ /site
123
+
124
+ # mypy
125
+ .mypy_cache/
126
+ .dmypy.json
127
+ dmypy.json
128
+
129
+ # Pyre type checker
130
+ .pyre/
131
+
132
+ # pytype static type analyzer
133
+ .pytype/
134
+
135
+ # Cython debug symbols
136
+ cython_debug/
137
+
138
+ # PyCharm
139
+ .idea/
140
+
141
+ # VSCode
142
+ .vscode/
143
+
144
+ # Project specific
145
+ *.log
146
+ claude_proxy.log
147
+ demolog.log
148
+ _tmp/
149
+ .DS_Store
150
+ logs/
151
+ .vibe_remote/
152
+ ui/node_modules/
153
+ ui/dist/
154
+ ui/.vite/
155
+ tmp/
156
+ .bot.pid
157
+ user_settings.json
158
+ vibe/_version.py
159
+
160
+ # Config files with secrets
161
+ config/secrets.py
162
+ config/local_settings.py
163
+
164
+ # Session data
165
+ sessions/
166
+ *.session
167
+
168
+ # Temporary files
169
+ *.tmp
170
+ *.bak
171
+ *.swp
172
+ *~
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 The Vibe Remote Authors
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.
@@ -0,0 +1,255 @@
1
+ Metadata-Version: 2.4
2
+ Name: vibe-remote
3
+ Version: 2.0.1
4
+ Summary: Local-first agent runtime for Slack - run AI coding agents from your chat
5
+ Project-URL: Homepage, https://github.com/cyhhao/vibe-remote
6
+ Project-URL: Repository, https://github.com/cyhhao/vibe-remote
7
+ Project-URL: Documentation, https://github.com/cyhhao/vibe-remote#readme
8
+ Project-URL: Issues, https://github.com/cyhhao/vibe-remote/issues
9
+ Author-email: cyhhao <cyhhao@users.noreply.github.com>
10
+ License-Expression: MIT
11
+ License-File: LICENSE
12
+ Keywords: agent,ai,automation,claude,codex,opencode,slack
13
+ Classifier: Development Status :: 4 - Beta
14
+ Classifier: Environment :: Console
15
+ Classifier: Intended Audience :: Developers
16
+ Classifier: License :: OSI Approved :: MIT License
17
+ Classifier: Operating System :: OS Independent
18
+ Classifier: Programming Language :: Python :: 3
19
+ Classifier: Programming Language :: Python :: 3.10
20
+ Classifier: Programming Language :: Python :: 3.11
21
+ Classifier: Programming Language :: Python :: 3.12
22
+ Classifier: Topic :: Communications :: Chat
23
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
24
+ Requires-Python: >=3.10
25
+ Requires-Dist: aiohttp>=3.8.0
26
+ Requires-Dist: anyio>=4.0.0
27
+ Requires-Dist: claude-code-sdk>=0.0.25
28
+ Requires-Dist: markdown-to-mrkdwn>=0.2.0
29
+ Requires-Dist: pyyaml>=6.0
30
+ Requires-Dist: slack-sdk>=3.26.0
31
+ Requires-Dist: typing-extensions>=4.12.2
32
+ Description-Content-Type: text/markdown
33
+
34
+ <div align="center">
35
+
36
+ <img src="assets/logo.png" alt="Vibe Remote" width="120"/>
37
+
38
+ # Vibe Remote
39
+
40
+ ### Your AI coding army, commanded from Slack.
41
+
42
+ **No laptop. No IDE. Just vibes.**
43
+
44
+ [![GitHub Stars](https://img.shields.io/github/stars/cyhhao/vibe-remote?color=ffcb47&labelColor=black&style=flat-square)](https://github.com/cyhhao/vibe-remote/stargazers)
45
+ [![Python](https://img.shields.io/badge/python-3.9%2B-3776AB?labelColor=black&style=flat-square)](https://www.python.org/)
46
+ [![License](https://img.shields.io/badge/license-MIT-green?labelColor=black&style=flat-square)](LICENSE)
47
+
48
+ [English](README.md) | [中文](README_ZH.md)
49
+
50
+ ---
51
+
52
+ ![Banner](assets/banner.jpg)
53
+
54
+ </div>
55
+
56
+ ## The Pitch
57
+
58
+ You're at the beach. Phone buzzes — production's on fire.
59
+
60
+ **Old you:** Panic. Find WiFi. Open laptop. Wait for IDE. Lose your tan.
61
+
62
+ **Vibe Remote you:** Open Slack. Type "Fix the auth bug in login.py". Watch Claude Code fix it in real-time. Approve. Sip margarita.
63
+
64
+ ```
65
+ That's it. That's the product.
66
+ ```
67
+
68
+ ---
69
+
70
+ ## Install in 10 Seconds
71
+
72
+ ```bash
73
+ curl -fsSL https://raw.githubusercontent.com/cyhhao/vibe-remote/master/install.sh | bash && vibe
74
+ ```
75
+
76
+ That's it. Browser opens. Paste your Slack tokens. Done.
77
+
78
+ <details>
79
+ <summary><b>Windows?</b></summary>
80
+
81
+ ```powershell
82
+ irm https://raw.githubusercontent.com/cyhhao/vibe-remote/master/install.ps1 | iex
83
+ ```
84
+ </details>
85
+
86
+ ---
87
+
88
+ ## Why This Exists
89
+
90
+ | Problem | Solution |
91
+ |---------|----------|
92
+ | Claude Code is amazing but needs a terminal | Slack IS your terminal now |
93
+ | Context-switching kills flow | Stay in one app |
94
+ | Can't code from phone | Yes you can |
95
+ | Multiple agents, multiple setups | One Slack, any agent |
96
+
97
+ **Supported Agents:**
98
+ - [Claude Code](https://docs.anthropic.com/en/docs/claude-code) — Deep reasoning, complex refactors
99
+ - [OpenCode](https://opencode.ai) — Fast, extensible, community favorite
100
+ - [Codex](https://github.com/openai/codex) — OpenAI's coding model
101
+
102
+ ---
103
+
104
+ ## How It Works
105
+
106
+ ```
107
+ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
108
+ │ You │ Slack │ Vibe Remote │ stdio │ AI Agent │
109
+ │ (anywhere) │ ──────▶ │ (your Mac) │ ──────▶ │ (your code) │
110
+ └──────────────┘ └──────────────┘ └──────────────┘
111
+ ```
112
+
113
+ 1. **You type** in Slack: *"Add dark mode to the settings page"*
114
+ 2. **Vibe Remote** routes to your configured agent
115
+ 3. **Agent** reads your codebase, writes code, streams back
116
+ 4. **You review** in Slack, iterate in thread
117
+
118
+ **Your code never leaves your machine.** Vibe Remote runs locally and connects via Slack's Socket Mode.
119
+
120
+ ---
121
+
122
+ ## Quick Start
123
+
124
+ ### 1. Install
125
+ ```bash
126
+ curl -fsSL https://raw.githubusercontent.com/cyhhao/vibe-remote/master/install.sh | bash
127
+ ```
128
+
129
+ ### 2. Run
130
+ ```bash
131
+ vibe
132
+ ```
133
+
134
+ ### 3. Setup Slack (5 min)
135
+ The web UI guides you through everything. Or read the [detailed guide](docs/SLACK_SETUP.md).
136
+
137
+ ### 4. Vibe
138
+ ```
139
+ /start → Pick your agent → Start typing
140
+ ```
141
+
142
+ ---
143
+
144
+ ## Commands
145
+
146
+ | In Slack | What it does |
147
+ |----------|--------------|
148
+ | `/start` | Open control panel |
149
+ | `/stop` | Kill current session |
150
+ | Just type | Talk to your agent |
151
+ | Reply in thread | Continue conversation |
152
+
153
+ **Pro tip:** Each Slack thread = isolated session. Start multiple threads for parallel tasks.
154
+
155
+ ---
156
+
157
+ ## Per-Channel Routing
158
+
159
+ Different projects, different agents:
160
+
161
+ ```
162
+ #frontend → OpenCode (fast iteration)
163
+ #backend → Claude Code (complex logic)
164
+ #prototypes → Codex (quick experiments)
165
+ ```
166
+
167
+ Configure in web UI → Channels.
168
+
169
+ ---
170
+
171
+ ## CLI
172
+
173
+ ```bash
174
+ vibe # Start everything
175
+ vibe status # Check if running
176
+ vibe stop # Stop everything
177
+ vibe doctor # Diagnose issues
178
+ ```
179
+
180
+ ---
181
+
182
+ ## Prerequisites
183
+
184
+ You need at least one coding agent installed:
185
+
186
+ <details>
187
+ <summary><b>Claude Code</b> (Recommended)</summary>
188
+
189
+ ```bash
190
+ npm install -g @anthropic-ai/claude-code
191
+ ```
192
+ </details>
193
+
194
+ <details>
195
+ <summary><b>OpenCode</b></summary>
196
+
197
+ ```bash
198
+ curl -fsSL https://opencode.ai/install | bash
199
+ ```
200
+ </details>
201
+
202
+ <details>
203
+ <summary><b>Codex</b></summary>
204
+
205
+ ```bash
206
+ npm install -g @openai/codex
207
+ ```
208
+ </details>
209
+
210
+ ---
211
+
212
+ ## Security
213
+
214
+ - **Local-first** — Vibe Remote runs on your machine
215
+ - **Socket Mode** — No public URLs, no webhooks
216
+ - **Your tokens** — Stored in `~/.vibe_remote/`, never uploaded
217
+ - **Your code** — Stays on your disk, sent only to your chosen AI provider
218
+
219
+ ---
220
+
221
+ ## Uninstall
222
+
223
+ ```bash
224
+ vibe stop && uv tool uninstall vibe-remote && rm -rf ~/.vibe_remote
225
+ ```
226
+
227
+ ---
228
+
229
+ ## Roadmap
230
+
231
+ - [ ] Discord & Teams support
232
+ - [ ] File attachments in Slack
233
+ - [ ] Multi-workspace
234
+ - [ ] Cloud relay mode (optional)
235
+
236
+ ---
237
+
238
+ ## Docs
239
+
240
+ - **[Slack Setup Guide](docs/SLACK_SETUP.md)** — Create your Slack app
241
+ - **[中文安装指南](docs/SLACK_SETUP_ZH.md)** — Chinese guide
242
+
243
+ ---
244
+
245
+ <div align="center">
246
+
247
+ **Stop context-switching. Start vibe coding.**
248
+
249
+ [Install Now](#install-in-10-seconds) · [Setup Slack](docs/SLACK_SETUP.md) · [Report Bug](https://github.com/cyhhao/vibe-remote/issues)
250
+
251
+ ---
252
+
253
+ *Built for developers who code from anywhere.*
254
+
255
+ </div>
@@ -0,0 +1,222 @@
1
+ <div align="center">
2
+
3
+ <img src="assets/logo.png" alt="Vibe Remote" width="120"/>
4
+
5
+ # Vibe Remote
6
+
7
+ ### Your AI coding army, commanded from Slack.
8
+
9
+ **No laptop. No IDE. Just vibes.**
10
+
11
+ [![GitHub Stars](https://img.shields.io/github/stars/cyhhao/vibe-remote?color=ffcb47&labelColor=black&style=flat-square)](https://github.com/cyhhao/vibe-remote/stargazers)
12
+ [![Python](https://img.shields.io/badge/python-3.9%2B-3776AB?labelColor=black&style=flat-square)](https://www.python.org/)
13
+ [![License](https://img.shields.io/badge/license-MIT-green?labelColor=black&style=flat-square)](LICENSE)
14
+
15
+ [English](README.md) | [中文](README_ZH.md)
16
+
17
+ ---
18
+
19
+ ![Banner](assets/banner.jpg)
20
+
21
+ </div>
22
+
23
+ ## The Pitch
24
+
25
+ You're at the beach. Phone buzzes — production's on fire.
26
+
27
+ **Old you:** Panic. Find WiFi. Open laptop. Wait for IDE. Lose your tan.
28
+
29
+ **Vibe Remote you:** Open Slack. Type "Fix the auth bug in login.py". Watch Claude Code fix it in real-time. Approve. Sip margarita.
30
+
31
+ ```
32
+ That's it. That's the product.
33
+ ```
34
+
35
+ ---
36
+
37
+ ## Install in 10 Seconds
38
+
39
+ ```bash
40
+ curl -fsSL https://raw.githubusercontent.com/cyhhao/vibe-remote/master/install.sh | bash && vibe
41
+ ```
42
+
43
+ That's it. Browser opens. Paste your Slack tokens. Done.
44
+
45
+ <details>
46
+ <summary><b>Windows?</b></summary>
47
+
48
+ ```powershell
49
+ irm https://raw.githubusercontent.com/cyhhao/vibe-remote/master/install.ps1 | iex
50
+ ```
51
+ </details>
52
+
53
+ ---
54
+
55
+ ## Why This Exists
56
+
57
+ | Problem | Solution |
58
+ |---------|----------|
59
+ | Claude Code is amazing but needs a terminal | Slack IS your terminal now |
60
+ | Context-switching kills flow | Stay in one app |
61
+ | Can't code from phone | Yes you can |
62
+ | Multiple agents, multiple setups | One Slack, any agent |
63
+
64
+ **Supported Agents:**
65
+ - [Claude Code](https://docs.anthropic.com/en/docs/claude-code) — Deep reasoning, complex refactors
66
+ - [OpenCode](https://opencode.ai) — Fast, extensible, community favorite
67
+ - [Codex](https://github.com/openai/codex) — OpenAI's coding model
68
+
69
+ ---
70
+
71
+ ## How It Works
72
+
73
+ ```
74
+ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
75
+ │ You │ Slack │ Vibe Remote │ stdio │ AI Agent │
76
+ │ (anywhere) │ ──────▶ │ (your Mac) │ ──────▶ │ (your code) │
77
+ └──────────────┘ └──────────────┘ └──────────────┘
78
+ ```
79
+
80
+ 1. **You type** in Slack: *"Add dark mode to the settings page"*
81
+ 2. **Vibe Remote** routes to your configured agent
82
+ 3. **Agent** reads your codebase, writes code, streams back
83
+ 4. **You review** in Slack, iterate in thread
84
+
85
+ **Your code never leaves your machine.** Vibe Remote runs locally and connects via Slack's Socket Mode.
86
+
87
+ ---
88
+
89
+ ## Quick Start
90
+
91
+ ### 1. Install
92
+ ```bash
93
+ curl -fsSL https://raw.githubusercontent.com/cyhhao/vibe-remote/master/install.sh | bash
94
+ ```
95
+
96
+ ### 2. Run
97
+ ```bash
98
+ vibe
99
+ ```
100
+
101
+ ### 3. Setup Slack (5 min)
102
+ The web UI guides you through everything. Or read the [detailed guide](docs/SLACK_SETUP.md).
103
+
104
+ ### 4. Vibe
105
+ ```
106
+ /start → Pick your agent → Start typing
107
+ ```
108
+
109
+ ---
110
+
111
+ ## Commands
112
+
113
+ | In Slack | What it does |
114
+ |----------|--------------|
115
+ | `/start` | Open control panel |
116
+ | `/stop` | Kill current session |
117
+ | Just type | Talk to your agent |
118
+ | Reply in thread | Continue conversation |
119
+
120
+ **Pro tip:** Each Slack thread = isolated session. Start multiple threads for parallel tasks.
121
+
122
+ ---
123
+
124
+ ## Per-Channel Routing
125
+
126
+ Different projects, different agents:
127
+
128
+ ```
129
+ #frontend → OpenCode (fast iteration)
130
+ #backend → Claude Code (complex logic)
131
+ #prototypes → Codex (quick experiments)
132
+ ```
133
+
134
+ Configure in web UI → Channels.
135
+
136
+ ---
137
+
138
+ ## CLI
139
+
140
+ ```bash
141
+ vibe # Start everything
142
+ vibe status # Check if running
143
+ vibe stop # Stop everything
144
+ vibe doctor # Diagnose issues
145
+ ```
146
+
147
+ ---
148
+
149
+ ## Prerequisites
150
+
151
+ You need at least one coding agent installed:
152
+
153
+ <details>
154
+ <summary><b>Claude Code</b> (Recommended)</summary>
155
+
156
+ ```bash
157
+ npm install -g @anthropic-ai/claude-code
158
+ ```
159
+ </details>
160
+
161
+ <details>
162
+ <summary><b>OpenCode</b></summary>
163
+
164
+ ```bash
165
+ curl -fsSL https://opencode.ai/install | bash
166
+ ```
167
+ </details>
168
+
169
+ <details>
170
+ <summary><b>Codex</b></summary>
171
+
172
+ ```bash
173
+ npm install -g @openai/codex
174
+ ```
175
+ </details>
176
+
177
+ ---
178
+
179
+ ## Security
180
+
181
+ - **Local-first** — Vibe Remote runs on your machine
182
+ - **Socket Mode** — No public URLs, no webhooks
183
+ - **Your tokens** — Stored in `~/.vibe_remote/`, never uploaded
184
+ - **Your code** — Stays on your disk, sent only to your chosen AI provider
185
+
186
+ ---
187
+
188
+ ## Uninstall
189
+
190
+ ```bash
191
+ vibe stop && uv tool uninstall vibe-remote && rm -rf ~/.vibe_remote
192
+ ```
193
+
194
+ ---
195
+
196
+ ## Roadmap
197
+
198
+ - [ ] Discord & Teams support
199
+ - [ ] File attachments in Slack
200
+ - [ ] Multi-workspace
201
+ - [ ] Cloud relay mode (optional)
202
+
203
+ ---
204
+
205
+ ## Docs
206
+
207
+ - **[Slack Setup Guide](docs/SLACK_SETUP.md)** — Create your Slack app
208
+ - **[中文安装指南](docs/SLACK_SETUP_ZH.md)** — Chinese guide
209
+
210
+ ---
211
+
212
+ <div align="center">
213
+
214
+ **Stop context-switching. Start vibe coding.**
215
+
216
+ [Install Now](#install-in-10-seconds) · [Setup Slack](docs/SLACK_SETUP.md) · [Report Bug](https://github.com/cyhhao/vibe-remote/issues)
217
+
218
+ ---
219
+
220
+ *Built for developers who code from anywhere.*
221
+
222
+ </div>
@@ -0,0 +1,37 @@
1
+ from .paths import (
2
+ get_vibe_remote_dir,
3
+ get_config_dir,
4
+ get_state_dir,
5
+ get_logs_dir,
6
+ get_runtime_dir,
7
+ get_runtime_pid_path,
8
+ get_runtime_ui_pid_path,
9
+ get_runtime_status_path,
10
+ get_runtime_doctor_path,
11
+ get_config_path,
12
+ get_settings_path,
13
+ get_sessions_path,
14
+ ensure_data_dirs,
15
+ )
16
+ from .v2_config import V2Config
17
+ from .v2_settings import SettingsStore
18
+ from .v2_sessions import SessionsStore
19
+
20
+ __all__ = [
21
+ "V2Config",
22
+ "SettingsStore",
23
+ "SessionsStore",
24
+ "get_vibe_remote_dir",
25
+ "get_config_dir",
26
+ "get_state_dir",
27
+ "get_logs_dir",
28
+ "get_runtime_dir",
29
+ "get_runtime_pid_path",
30
+ "get_runtime_ui_pid_path",
31
+ "get_runtime_status_path",
32
+ "get_runtime_doctor_path",
33
+ "get_config_path",
34
+ "get_settings_path",
35
+ "get_sessions_path",
36
+ "ensure_data_dirs",
37
+ ]