@quantiya/codevibe-codex-plugin 1.0.6 โ†’ 1.0.8

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 (66) hide show
  1. package/README.md +59 -106
  2. package/dist/server.js +22 -1051
  3. package/package.json +10 -12
  4. package/dist/approval-detector.d.ts +0 -38
  5. package/dist/approval-detector.d.ts.map +0 -1
  6. package/dist/approval-detector.js +0 -174
  7. package/dist/approval-detector.js.map +0 -1
  8. package/dist/appsync-client.d.ts +0 -69
  9. package/dist/appsync-client.d.ts.map +0 -1
  10. package/dist/appsync-client.js +0 -937
  11. package/dist/appsync-client.js.map +0 -1
  12. package/dist/auth-cli.d.ts +0 -11
  13. package/dist/auth-cli.d.ts.map +0 -1
  14. package/dist/auth-cli.js +0 -241
  15. package/dist/auth-cli.js.map +0 -1
  16. package/dist/config.d.ts +0 -29
  17. package/dist/config.d.ts.map +0 -1
  18. package/dist/config.js +0 -116
  19. package/dist/config.js.map +0 -1
  20. package/dist/crypto-service.d.ts +0 -115
  21. package/dist/crypto-service.d.ts.map +0 -1
  22. package/dist/crypto-service.js +0 -278
  23. package/dist/crypto-service.js.map +0 -1
  24. package/dist/event-mapper.d.ts +0 -39
  25. package/dist/event-mapper.d.ts.map +0 -1
  26. package/dist/event-mapper.js +0 -302
  27. package/dist/event-mapper.js.map +0 -1
  28. package/dist/key-manager.d.ts +0 -87
  29. package/dist/key-manager.d.ts.map +0 -1
  30. package/dist/key-manager.js +0 -287
  31. package/dist/key-manager.js.map +0 -1
  32. package/dist/logger.d.ts +0 -2
  33. package/dist/logger.d.ts.map +0 -1
  34. package/dist/logger.js +0 -18
  35. package/dist/logger.js.map +0 -1
  36. package/dist/prompt-parser.d.ts +0 -3
  37. package/dist/prompt-parser.d.ts.map +0 -1
  38. package/dist/prompt-parser.js +0 -8
  39. package/dist/prompt-parser.js.map +0 -1
  40. package/dist/prompt-responder.d.ts +0 -18
  41. package/dist/prompt-responder.d.ts.map +0 -1
  42. package/dist/prompt-responder.js +0 -78
  43. package/dist/prompt-responder.js.map +0 -1
  44. package/dist/server.d.ts +0 -8
  45. package/dist/server.d.ts.map +0 -1
  46. package/dist/server.js.map +0 -1
  47. package/dist/session-id-cache.d.ts +0 -16
  48. package/dist/session-id-cache.d.ts.map +0 -1
  49. package/dist/session-id-cache.js +0 -90
  50. package/dist/session-id-cache.js.map +0 -1
  51. package/dist/session-log-watcher.d.ts +0 -61
  52. package/dist/session-log-watcher.d.ts.map +0 -1
  53. package/dist/session-log-watcher.js +0 -372
  54. package/dist/session-log-watcher.js.map +0 -1
  55. package/dist/tmux-pane-observer.d.ts +0 -39
  56. package/dist/tmux-pane-observer.d.ts.map +0 -1
  57. package/dist/tmux-pane-observer.js +0 -255
  58. package/dist/tmux-pane-observer.js.map +0 -1
  59. package/dist/token-storage.d.ts +0 -39
  60. package/dist/token-storage.d.ts.map +0 -1
  61. package/dist/token-storage.js +0 -169
  62. package/dist/token-storage.js.map +0 -1
  63. package/dist/types.d.ts +0 -158
  64. package/dist/types.d.ts.map +0 -1
  65. package/dist/types.js +0 -17
  66. package/dist/types.js.map +0 -1
package/README.md CHANGED
@@ -1,155 +1,108 @@
1
- # CodeVibe Codex Plugin
1
+ # CodeVibe for OpenAI Codex CLI
2
2
 
3
- Mobile companion plugin for OpenAI Codex CLI. Monitor and interact with your Codex sessions from your phone.
3
+ **Control OpenAI Codex CLI from your iPhone and Android.** See your agent's work, approve file edits, dictate prompts by voice โ€” all from your phone, anywhere you are.
4
4
 
5
- ## Overview
5
+ ๐ŸŒ **[quantiya.ai/codevibe](https://quantiya.ai/codevibe)** โ€” landing page, demo video, and one-liner installer
6
6
 
7
- This plugin enables bidirectional synchronization between Codex CLI on your Mac and the CodeVibe iOS app. See your conversations, shell commands, file edits, and agent reasoning in real-time on your phone.
7
+ ๐Ÿ“ฑ **[Download on the App Store](https://apps.apple.com/app/id6756500217)** ยท **[Get it on Google Play](https://play.google.com/store/apps/details?id=ai.quantiya.app.codevibe)**
8
8
 
9
- **Part of the CodeVibe multi-agent ecosystem:**
10
- - [Claude Plugin](https://github.com/hendryyeh/quantiya-codevibe-claude-plugin) - For Claude Code
11
- - [Gemini Plugin](https://github.com/hendryyeh/quantiya-codevibe-gemini-plugin) - For Gemini CLI
12
- - **Codex Plugin** (this repo) - For OpenAI Codex CLI
13
-
14
- ## Quick Start
15
-
16
- ```bash
17
- npm install -g @quantiya/codevibe-codex-plugin
18
- codevibe-codex login # authenticate with CodeVibe backend
19
- codevibe-codex # start Codex with mobile sync
20
- ```
21
-
22
- ## Features
23
-
24
- | Feature | Supported |
25
- |---------|-----------|
26
- | User prompts | Yes |
27
- | Assistant responses | Yes |
28
- | Agent reasoning/thinking | Yes |
29
- | Shell commands | Yes |
30
- | File edits (patches) | Yes |
31
- | Tool outputs | Yes |
32
- | Image attachments | Yes |
33
- | Approval prompts | Yes (via tmux pane detection) |
34
- | File diff preview | Yes |
35
-
36
- ### What gets synced
37
-
38
- - **Desktop โ†’ Mobile:** user prompts, assistant responses, shell commands, tool/file edits, approval prompts, images, logs
39
- - **Mobile โ†’ Desktop:** text prompts and approval responses sent from iOS app into the active Codex session (via tmux)
9
+ ---
40
10
 
41
- ## Prerequisites
11
+ ## Why CodeVibe for Codex CLI
42
12
 
43
- - macOS
44
- - Node.js 18+
45
- - tmux (`brew install tmux`)
46
- - [Codex CLI](https://github.com/openai/codex) installed and authenticated
47
- - CodeVibe iOS app
13
+ - **๐Ÿš€ Real-time sync** โ€” every prompt, response, shell command, and file patch shows up on your phone in 100โ€“500ms
14
+ - **โœ… Approve from anywhere** โ€” review full file diffs and approve or reject file edits from your phone
15
+ - **๐Ÿง  Reasoning visibility** โ€” see Codex's thinking/reasoning alongside its output
16
+ - **๐ŸŽ™๏ธ Voice prompts** โ€” dictate your next prompt with speech-to-text
17
+ - **๐Ÿ“ท Image attachments** โ€” send screenshots and photos; downloaded locally for Codex to reference
18
+ - **๐Ÿ”” Push notifications** โ€” get notified when your agent needs input
19
+ - **๐Ÿ”’ End-to-end encrypted** โ€” AES-256-GCM with ECDH key exchange
20
+ - **๐Ÿ”“ Locked screen support** โ€” works even when your computer screen is locked (via tmux)
21
+ - **๐Ÿง  Multi-agent ready** โ€” Codex sessions appear alongside Claude and Gemini sessions in the same app
48
22
 
49
- ## Installation
23
+ ## Install in 30 seconds
50
24
 
51
25
  ```bash
52
- npm install -g @quantiya/codevibe-codex-plugin
26
+ curl -fsSL https://quantiya.ai/codevibe/install.sh | bash
53
27
  ```
54
28
 
55
- ### From Source (Development)
29
+ Download the **[iOS app](https://apps.apple.com/app/id6756500217)** or **[Android app](https://play.google.com/store/apps/details?id=ai.quantiya.app.codevibe)**, sign in with the same Apple or Google account, and run:
56
30
 
57
31
  ```bash
58
- git clone https://github.com/hendryyeh/quantiya-codevibe-codex-plugin.git
59
- cd codevibe-codex-plugin
60
- npm install
61
- npm run build
32
+ codevibe-codex
62
33
  ```
63
34
 
64
- ## Usage
35
+ Your session appears on your phone automatically.
65
36
 
66
- Use `codevibe-codex` instead of `codex` to enable mobile sync:
37
+ ### Manual install
67
38
 
68
39
  ```bash
69
- # Start Codex with mobile sync
40
+ npm install -g @quantiya/codevibe
41
+ codevibe login
70
42
  codevibe-codex
71
-
72
- # Start with an initial prompt
73
- codevibe-codex "fix the bug in auth.ts"
74
43
  ```
75
44
 
76
- ### CLI Commands
77
-
78
- ```bash
79
- codevibe-codex login # Authenticate with CodeVibe backend
80
- codevibe-codex status # Check authentication status
81
- codevibe-codex logout # Sign out
82
- codevibe-codex # Start Codex with mobile sync
83
- ```
45
+ ## Requirements
84
46
 
85
- ## How It Works
47
+ - **macOS, Linux, or WSL Ubuntu** โ€” Windows without WSL is not supported
48
+ - **Node.js** 18.0.0+
49
+ - **tmux** โ€” `brew install tmux` on macOS, `apt install tmux` on Linux/WSL
50
+ - **Codex CLI** installed and authenticated
86
51
 
87
- 1. **Session Log Watching** - Monitors `~/.codex/sessions/` for JSONL log files
88
- 2. **Real-time Sync** - Parses log entries and syncs to AWS AppSync backend
89
- 3. **Mobile Display** - iOS app receives events via WebSocket subscription
90
- 4. **Mobile Input** - Messages from iOS are sent to terminal via tmux
52
+ ## How it works
91
53
 
92
- Each live Codex process appears as its own CodeVibe session, even if multiple Codex sessions are running in the same project directory.
54
+ Codex CLI writes session logs to `~/.codex/sessions/` as JSONL files. CodeVibe watches those files with chokidar, parses every log entry, and streams it through E2E-encrypted AWS AppSync to your phone.
93
55
 
94
- ### Data Flow
56
+ Approval prompts (Codex's interactive Y/N confirmations) aren't in the JSONL log, so CodeVibe observes the live tmux pane to detect them โ€” you get real prompts with real options, and your mobile approve/reject is sent back via `tmux send-keys`.
95
57
 
96
- ```
97
- Desktop โ†’ Mobile:
98
- Codex CLI โ†’ Session JSONL โ†’ Plugin โ†’ AppSync โ†’ iOS App
58
+ Each live Codex process appears as its own session on your phone, so you can run multiple concurrent Codex sessions side-by-side with Claude and Gemini.
99
59
 
100
- Mobile โ†’ Desktop:
101
- iOS App โ†’ AppSync โ†’ Plugin โ†’ tmux send-keys โ†’ Codex CLI
102
- ```
60
+ ## What gets synced
103
61
 
104
- ## Configuration
62
+ | Direction | What |
63
+ |---|---|
64
+ | **Desktop โ†’ Mobile** | User prompts, assistant responses, agent reasoning, shell commands, file edits (apply_patch), tool outputs, approval prompts, images |
65
+ | **Mobile โ†’ Desktop** | Text prompts and approval responses executed via tmux |
105
66
 
106
- Create a `.env.development` file (see `.env.example`):
67
+ ## CLI commands
107
68
 
108
69
  ```bash
109
- # AWS AppSync
110
- APPSYNC_URL=https://xxx.appsync-api.us-east-1.amazonaws.com/graphql
111
- APPSYNC_REALTIME_URL=wss://xxx.appsync-realtime-api.us-east-1.amazonaws.com/graphql
112
-
113
- # Cognito
114
- COGNITO_USER_POOL_ID=us-east-1_xxx
115
- COGNITO_CLIENT_ID=xxx
116
- COGNITO_DOMAIN=xxx.auth.us-east-1.amazoncognito.com
70
+ codevibe-codex # Start Codex with mobile sync
71
+ codevibe-codex "fix bug" # Start with an initial prompt
72
+ codevibe-codex login # Authenticate via browser OAuth
73
+ codevibe-codex status # Check auth status
74
+ codevibe-codex logout # Sign out
117
75
  ```
118
76
 
119
77
  ## Troubleshooting
120
78
 
121
- ### Session not appearing in iOS app
122
-
123
79
  ```bash
124
- # Check if session logs exist
125
- ls -la ~/.codex/sessions/$(date +%Y)/$(date +%m)/$(date +%d)/
126
-
127
- # Check plugin logs
80
+ # Check server logs
128
81
  tail -f /tmp/codevibe-codex-mcp.log
129
- ```
130
82
 
131
- ### Mobile prompts not working
83
+ # Verify session logs exist
84
+ ls -la ~/.codex/sessions/$(date +%Y)/$(date +%m)/$(date +%d)/
132
85
 
133
- ```bash
134
- # Verify tmux session exists
86
+ # Verify tmux session
135
87
  tmux list-sessions | grep codevibe-codex
88
+
89
+ # Reinstall if needed
90
+ codevibe update
136
91
  ```
137
92
 
138
- ## Known Limitations
93
+ ## Support
139
94
 
140
- - **Approval prompts are not in JSONL logs** - Detected via tmux pane observation instead of structured log entries
141
- - Requires tmux for terminal integration (macOS, Linux)
95
+ - **Email:** support@quantiya.ai
96
+ - **Landing page:** [quantiya.ai/codevibe](https://quantiya.ai/codevibe)
97
+ - **Privacy policy:** [quantiya.ai/privacy](https://quantiya.ai/privacy)
142
98
 
143
- ## Related
99
+ ## Part of the CodeVibe family
144
100
 
145
- - **CodeVibe iOS App** - Available on the App Store
146
- - [Claude Plugin](https://github.com/hendryyeh/codevibe-claude-plugin) - For Claude Code
147
- - [Gemini Plugin](https://github.com/hendryyeh/codevibe-gemini-plugin) - For Gemini CLI
101
+ - **[@quantiya/codevibe](https://www.npmjs.com/package/@quantiya/codevibe)** โ€” meta-package (install this, not this plugin directly)
102
+ - **[@quantiya/codevibe-core](https://www.npmjs.com/package/@quantiya/codevibe-core)** โ€” shared library used by all plugins
103
+ - **[@quantiya/codevibe-claude-plugin](https://www.npmjs.com/package/@quantiya/codevibe-claude-plugin)** โ€” Claude Code support
104
+ - **[@quantiya/codevibe-gemini-plugin](https://www.npmjs.com/package/@quantiya/codevibe-gemini-plugin)** โ€” Gemini CLI support
148
105
 
149
106
  ## License
150
107
 
151
108
  MIT
152
-
153
- ---
154
-
155
- **Maintained by:** CodeVibe Team