shellx-cli 0.0.12 → 0.0.15
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/LICENSE +2 -2
- package/README.md +116 -238
- package/bundle/sandbox-macos-permissive-closed.sb +0 -0
- package/bundle/sandbox-macos-permissive-open.sb +3 -1
- package/bundle/sandbox-macos-permissive-proxied.sb +0 -0
- package/bundle/sandbox-macos-restrictive-closed.sb +0 -0
- package/bundle/sandbox-macos-restrictive-open.sb +0 -0
- package/bundle/sandbox-macos-restrictive-proxied.sb +0 -0
- package/bundle/shellx.js +363849 -250488
- package/package.json +59 -20
- package/bundle/assets/README.md +0 -5
- package/bundle/assets/shellx-linux-x86_64.zip +0 -0
- package/bundle/assets/shellx-macos-aarch64.zip +0 -0
- package/bundle/assets/shellx-macos-x86_64.zip +0 -0
- package/bundle/assets/shellx-win-x64.zip +0 -0
- package/bundle/assets/shellx-win-x86.zip +0 -0
- package/bundle/assets/shellx.apk +0 -0
- package/bundle/assets/shellx.apk.sha256 +0 -1
package/LICENSE
CHANGED
|
@@ -187,7 +187,7 @@
|
|
|
187
187
|
same "printed page" as the copyright notice for easier
|
|
188
188
|
identification within third-party archives.
|
|
189
189
|
|
|
190
|
-
|
|
190
|
+
Copyright [yyyy] [name of copyright owner]
|
|
191
191
|
|
|
192
192
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
193
193
|
you may not use this file except in compliance with the License.
|
|
@@ -199,4 +199,4 @@
|
|
|
199
199
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
200
200
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
201
201
|
See the License for the specific language governing permissions and
|
|
202
|
-
limitations under the License.
|
|
202
|
+
limitations under the License.
|
package/README.md
CHANGED
|
@@ -1,310 +1,188 @@
|
|
|
1
|
-
#
|
|
1
|
+
# ShellX CLI
|
|
2
2
|
|
|
3
|
-
[](https://github.com/google-gemini/gemini-cli/blob/main/LICENSE)
|
|
3
|
+
[](https://opensource.org/licenses/Apache-2.0)
|
|
4
|
+
[](https://nodejs.org/)
|
|
6
5
|
|
|
7
|
-
|
|
6
|
+
**ShellX CLI** is a powerful command-line interface that combines the intelligence of Google's Gemini AI with advanced Android device automation capabilities. It provides seamless shell command execution, UI automation, and AI-powered assistance for Android development and testing.
|
|
8
7
|
|
|
9
|
-
|
|
8
|
+
## ✨ Features
|
|
10
9
|
|
|
11
|
-
|
|
10
|
+
### 🤖 AI-Powered Assistance
|
|
11
|
+
- **Gemini Integration**: Direct access to Google's Gemini AI models through an intuitive CLI
|
|
12
|
+
- **Code Generation**: Generate code, scripts, and automation workflows
|
|
13
|
+
- **Smart Debugging**: AI-assisted troubleshooting and error analysis
|
|
14
|
+
- **Natural Language Commands**: Execute complex tasks using natural language
|
|
12
15
|
|
|
13
|
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
- **🛡️ Open source**: Apache 2.0 licensed
|
|
16
|
+
### 📱 Android Device Control
|
|
17
|
+
- **Shell Command Execution**: Run shell commands on Android devices with real-time output
|
|
18
|
+
- **UI Automation**: Advanced element finding with retry logic and multiple strategies
|
|
19
|
+
- **Screen Operations**: Screenshots, screen info, and visual change detection
|
|
20
|
+
- **Device Management**: Comprehensive device information and control
|
|
19
21
|
|
|
20
|
-
|
|
22
|
+
### 🔧 Developer Experience
|
|
23
|
+
- **Zero-Configuration Setup**: Automatic authentication and service connection
|
|
24
|
+
- **Intelligent Fallback**: Seamless switching between cloud and local services
|
|
25
|
+
- **Robust Error Handling**: Comprehensive error recovery and diagnostics
|
|
26
|
+
- **Extensible Architecture**: Plugin system for custom tools and integrations
|
|
21
27
|
|
|
22
|
-
###
|
|
28
|
+
### 🏗️ Monorepo Structure
|
|
29
|
+
- **Modular Design**: Organized into focused packages for different capabilities
|
|
30
|
+
- **Cross-Platform**: Supports Windows, macOS, and Linux
|
|
31
|
+
- **Container Ready**: Docker support for sandboxed environments
|
|
23
32
|
|
|
24
|
-
|
|
33
|
+
## 🚀 Quick Start
|
|
25
34
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
35
|
+
### Prerequisites
|
|
36
|
+
- Node.js 20.0.0 or higher
|
|
37
|
+
- Android device or emulator (for Android features)
|
|
38
|
+
- ShellX.ai account (for cloud features)
|
|
30
39
|
|
|
31
|
-
|
|
40
|
+
### Installation
|
|
32
41
|
|
|
42
|
+
#### From NPM (Recommended)
|
|
33
43
|
```bash
|
|
34
|
-
npm install -g
|
|
44
|
+
npm install -g shellx-cli
|
|
35
45
|
```
|
|
36
46
|
|
|
37
|
-
####
|
|
38
|
-
|
|
47
|
+
#### From Source
|
|
39
48
|
```bash
|
|
40
|
-
|
|
49
|
+
git clone https://github.com/10cl/shellx-cli.git
|
|
50
|
+
cd shellx-cli
|
|
51
|
+
npm install
|
|
52
|
+
npm run build
|
|
53
|
+
npm run bundle
|
|
41
54
|
```
|
|
42
55
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
- Node.js version 20 or higher
|
|
46
|
-
- macOS, Linux, or Windows
|
|
47
|
-
|
|
48
|
-
## Release Cadence and Tags
|
|
49
|
-
|
|
50
|
-
See [Releases](./docs/releases.md) for more details.
|
|
51
|
-
|
|
52
|
-
### Preview
|
|
53
|
-
|
|
54
|
-
New preview releases will be published each week at UTC 2359 on Tuesdays. These releases will not have been fully vetted and may contain regressions or other outstanding issues. Please help us test and install with `preview` tag.
|
|
56
|
+
### Basic Setup
|
|
55
57
|
|
|
58
|
+
1. **Set Environment Variables**:
|
|
56
59
|
```bash
|
|
57
|
-
|
|
60
|
+
# For ShellX Android automation
|
|
61
|
+
export SHELLX_AUTH_KEY="your-shellx-auth-key"
|
|
58
62
|
```
|
|
59
63
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
- New stable releases will be published each week at UTC 2000 on Tuesdays, this will be the full promotion of last week's `preview` release + any bug fixes and validations. Use `latest` tag.
|
|
63
|
-
|
|
64
|
+
2. **Initialize the CLI**:
|
|
64
65
|
```bash
|
|
65
|
-
|
|
66
|
+
shellx --help
|
|
66
67
|
```
|
|
67
68
|
|
|
68
|
-
###
|
|
69
|
-
|
|
70
|
-
- New releases will be published each week at UTC 0000 each day, This will be all changes from the main branch as represented at time of release. It should be assumed there are pending validations and issues. Use `nightly` tag.
|
|
69
|
+
### Development Workflow
|
|
71
70
|
|
|
72
71
|
```bash
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
## 📋 Key Features
|
|
77
|
-
|
|
78
|
-
### Code Understanding & Generation
|
|
79
|
-
|
|
80
|
-
- Query and edit large codebases
|
|
81
|
-
- Generate new apps from PDFs, images, or sketches using multimodal capabilities
|
|
82
|
-
- Debug issues and troubleshoot with natural language
|
|
83
|
-
|
|
84
|
-
### Automation & Integration
|
|
85
|
-
|
|
86
|
-
- Automate operational tasks like querying pull requests or handling complex rebases
|
|
87
|
-
- Use MCP servers to connect new capabilities, including [media generation with Imagen, Veo or Lyria](https://github.com/GoogleCloudPlatform/vertex-ai-creative-studio/tree/main/experiments/mcp-genmedia)
|
|
88
|
-
- Run non-interactively in scripts for workflow automation
|
|
72
|
+
# Start development server
|
|
73
|
+
npm run start
|
|
89
74
|
|
|
90
|
-
|
|
75
|
+
# Run tests
|
|
76
|
+
npm run test
|
|
91
77
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
- Custom context files (GEMINI.md) to tailor behavior for your projects
|
|
78
|
+
# Build for production
|
|
79
|
+
npm run build
|
|
95
80
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
- **Pull Request Reviews**: Automated code review with contextual feedback and suggestions
|
|
101
|
-
- **Issue Triage**: Automated labeling and prioritization of GitHub issues based on content analysis
|
|
102
|
-
- **On-demand Assistance**: Mention `@gemini-cli` in issues and pull requests for help with debugging, explanations, or task delegation
|
|
103
|
-
- **Custom Workflows**: Build automated, scheduled and on-demand workflows tailored to your team's needs
|
|
104
|
-
|
|
105
|
-
## 🔐 Authentication Options
|
|
106
|
-
|
|
107
|
-
Choose the authentication method that best fits your needs:
|
|
108
|
-
|
|
109
|
-
### Option 1: OAuth login (Using your Google Account)
|
|
110
|
-
|
|
111
|
-
**✨ Best for:** Individual developers as well as anyone who has a Gemini Code Assist License. (see [quota limits and terms of service](https://cloud.google.com/gemini/docs/quotas) for details)
|
|
112
|
-
|
|
113
|
-
**Benefits:**
|
|
81
|
+
# Run linting
|
|
82
|
+
npm run lint
|
|
83
|
+
```
|
|
114
84
|
|
|
115
|
-
|
|
116
|
-
- **Gemini 2.5 Pro** with 1M token context window
|
|
117
|
-
- **No API key management** - just sign in with your Google account
|
|
118
|
-
- **Automatic updates** to latest models
|
|
85
|
+
## 🏗️ Project Structure
|
|
119
86
|
|
|
120
|
-
|
|
87
|
+
This is a monorepo containing several key packages:
|
|
121
88
|
|
|
122
|
-
```bash
|
|
123
|
-
gemini
|
|
124
89
|
```
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
#
|
|
130
|
-
|
|
131
|
-
|
|
90
|
+
shellx-cli/
|
|
91
|
+
├── packages/
|
|
92
|
+
│ ├── cli/ # Main CLI interface (@google/gemini-cli)
|
|
93
|
+
│ ├── core/ # Core functionality (@google/gemini-cli-core)
|
|
94
|
+
│ ├── shellx-ai/ # Android automation library
|
|
95
|
+
│ ├── a2a-server/ # Agent-to-Agent server
|
|
96
|
+
│ ├── phone-agent/ # Phone automation agent
|
|
97
|
+
│ ├── shellx-binary/ # Binary assets management
|
|
98
|
+
│ └── vscode-ide-companion/ # VS Code integration
|
|
99
|
+
├── bundle/ # Compiled CLI bundle
|
|
100
|
+
├── scripts/ # Build and development scripts
|
|
101
|
+
└── docs/ # Documentation
|
|
132
102
|
```
|
|
133
103
|
|
|
134
|
-
###
|
|
135
|
-
|
|
136
|
-
**✨ Best for:** Developers who need specific model control or paid tier access
|
|
137
|
-
|
|
138
|
-
**Benefits:**
|
|
139
|
-
|
|
140
|
-
- **Free tier**: 100 requests/day with Gemini 2.5 Pro
|
|
141
|
-
- **Model selection**: Choose specific Gemini models
|
|
142
|
-
- **Usage-based billing**: Upgrade for higher limits when needed
|
|
143
|
-
|
|
144
|
-
```bash
|
|
145
|
-
# Get your key from https://aistudio.google.com/apikey
|
|
146
|
-
export GEMINI_API_KEY="YOUR_API_KEY"
|
|
147
|
-
gemini
|
|
148
|
-
```
|
|
104
|
+
### Key Packages
|
|
149
105
|
|
|
150
|
-
|
|
106
|
+
- **shellx-ai**: Android device automation and UI control library
|
|
107
|
+
- **phone-agent**: Specialized agent for phone automation tasks
|
|
151
108
|
|
|
152
|
-
**✨ Best for:** Enterprise teams and production workloads
|
|
153
109
|
|
|
154
|
-
|
|
110
|
+
## 🤝 Contributing
|
|
155
111
|
|
|
156
|
-
|
|
157
|
-
- **Scalable**: Higher rate limits with billing account
|
|
158
|
-
- **Integration**: Works with existing Google Cloud infrastructure
|
|
112
|
+
### Development Setup
|
|
159
113
|
|
|
114
|
+
1. **Clone the repository**:
|
|
160
115
|
```bash
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
export GOOGLE_GENAI_USE_VERTEXAI=true
|
|
164
|
-
gemini
|
|
116
|
+
git clone https://github.com/10cl/shellx-cli.git
|
|
117
|
+
cd shellx-cli
|
|
165
118
|
```
|
|
166
119
|
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
## 🚀 Getting Started
|
|
170
|
-
|
|
171
|
-
### Basic Usage
|
|
172
|
-
|
|
173
|
-
#### Start in current directory
|
|
174
|
-
|
|
120
|
+
2. **Install dependencies**:
|
|
175
121
|
```bash
|
|
176
|
-
|
|
122
|
+
npm install
|
|
177
123
|
```
|
|
178
124
|
|
|
179
|
-
|
|
180
|
-
|
|
125
|
+
3. **Set up development environment**:
|
|
181
126
|
```bash
|
|
182
|
-
|
|
127
|
+
npm run build:packages
|
|
183
128
|
```
|
|
184
129
|
|
|
185
|
-
|
|
186
|
-
|
|
130
|
+
4. **Run in development mode**:
|
|
187
131
|
```bash
|
|
188
|
-
|
|
132
|
+
npm run start
|
|
189
133
|
```
|
|
190
134
|
|
|
191
|
-
|
|
135
|
+
### Pull Request Process
|
|
192
136
|
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
137
|
+
1. Fork the repository
|
|
138
|
+
2. Create a feature branch
|
|
139
|
+
3. Make your changes
|
|
140
|
+
4. Run tests and quality checks
|
|
141
|
+
5. Submit a pull request
|
|
196
142
|
|
|
197
|
-
|
|
143
|
+
## 📋 Roadmap
|
|
198
144
|
|
|
199
|
-
|
|
145
|
+
Key focus areas:
|
|
146
|
+
- Enhanced AI model integration
|
|
147
|
+
- Improved Android automation capabilities
|
|
148
|
+
- Better developer tooling
|
|
149
|
+
- Expanded platform support
|
|
150
|
+
- Performance optimizations
|
|
200
151
|
|
|
201
|
-
|
|
202
|
-
cd new-project/
|
|
203
|
-
gemini
|
|
204
|
-
> Write me a Discord bot that answers questions using a FAQ.md file I will provide
|
|
205
|
-
```
|
|
152
|
+
## 🐛 Troubleshooting
|
|
206
153
|
|
|
207
|
-
|
|
154
|
+
### Common Issues
|
|
208
155
|
|
|
156
|
+
**Connection Problems**
|
|
209
157
|
```bash
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
gemini
|
|
213
|
-
> Give me a summary of all of the changes that went in yesterday
|
|
158
|
+
# Check device connection
|
|
159
|
+
adb devices
|
|
214
160
|
```
|
|
215
161
|
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
- [**Configuration Guide**](./docs/cli/configuration.md) - Settings and customization
|
|
223
|
-
- [**Keyboard Shortcuts**](./docs/keyboard-shortcuts.md) - Productivity tips
|
|
224
|
-
|
|
225
|
-
### Core Features
|
|
226
|
-
|
|
227
|
-
- [**Commands Reference**](./docs/cli/commands.md) - All slash commands (`/help`, `/chat`, `/mcp`, etc.)
|
|
228
|
-
- [**Checkpointing**](./docs/checkpointing.md) - Save and resume conversations
|
|
229
|
-
- [**Memory Management**](./docs/tools/memory.md) - Using GEMINI.md context files
|
|
230
|
-
- [**Token Caching**](./docs/cli/token-caching.md) - Optimize token usage
|
|
231
|
-
|
|
232
|
-
### Tools & Extensions
|
|
233
|
-
|
|
234
|
-
- [**Built-in Tools Overview**](./docs/tools/index.md)
|
|
235
|
-
- [File System Operations](./docs/tools/file-system.md)
|
|
236
|
-
- [Shell Commands](./docs/tools/shell.md)
|
|
237
|
-
- [Web Fetch & Search](./docs/tools/web-fetch.md)
|
|
238
|
-
- [Multi-file Operations](./docs/tools/multi-file.md)
|
|
239
|
-
- [**MCP Server Integration**](./docs/tools/mcp-server.md) - Extend with custom tools
|
|
240
|
-
- [**Custom Extensions**](./docs/extension.md) - Build your own commands
|
|
241
|
-
|
|
242
|
-
### Advanced Topics
|
|
243
|
-
|
|
244
|
-
- [**Architecture Overview**](./docs/architecture.md) - How Gemini CLI works
|
|
245
|
-
- [**IDE Integration**](./docs/ide-integration.md) - VS Code companion
|
|
246
|
-
- [**Sandboxing & Security**](./docs/sandbox.md) - Safe execution environments
|
|
247
|
-
- [**Enterprise Deployment**](./docs/deployment.md) - Docker, system-wide config
|
|
248
|
-
- [**Telemetry & Monitoring**](./docs/telemetry.md) - Usage tracking
|
|
249
|
-
- [**Tools API Development**](./docs/core/tools-api.md) - Create custom tools
|
|
250
|
-
|
|
251
|
-
### Configuration & Customization
|
|
252
|
-
|
|
253
|
-
- [**Settings Reference**](./docs/cli/configuration.md) - All configuration options
|
|
254
|
-
- [**Theme Customization**](./docs/cli/themes.md) - Visual customization
|
|
255
|
-
- [**.gemini Directory**](./docs/gemini-ignore.md) - Project-specific settings
|
|
256
|
-
- [**Environment Variables**](./docs/cli/configuration.md#environment-variables)
|
|
257
|
-
|
|
258
|
-
### Troubleshooting & Support
|
|
259
|
-
|
|
260
|
-
- [**Troubleshooting Guide**](./docs/troubleshooting.md) - Common issues and solutions
|
|
261
|
-
- [**FAQ**](./docs/troubleshooting.md#frequently-asked-questions) - Quick answers
|
|
262
|
-
- Use `/bug` command to report issues directly from the CLI
|
|
263
|
-
|
|
264
|
-
### Using MCP Servers
|
|
265
|
-
|
|
266
|
-
Configure MCP servers in `~/.gemini/settings.json` to extend Gemini CLI with custom tools:
|
|
267
|
-
|
|
268
|
-
```text
|
|
269
|
-
> @github List my open pull requests
|
|
270
|
-
> @slack Send a summary of today's commits to #dev channel
|
|
271
|
-
> @database Run a query to find inactive users
|
|
162
|
+
**Build Issues**
|
|
163
|
+
```bash
|
|
164
|
+
# Clean and rebuild
|
|
165
|
+
npm run clean
|
|
166
|
+
npm install
|
|
167
|
+
npm run build
|
|
272
168
|
```
|
|
273
169
|
|
|
274
|
-
See the [MCP Server Integration guide](./docs/tools/mcp-server.md) for setup instructions.
|
|
275
|
-
|
|
276
|
-
## 🤝 Contributing
|
|
277
|
-
|
|
278
|
-
We welcome contributions! Gemini CLI is fully open source (Apache 2.0), and we encourage the community to:
|
|
279
|
-
|
|
280
|
-
- Report bugs and suggest features
|
|
281
|
-
- Improve documentation
|
|
282
|
-
- Submit code improvements
|
|
283
|
-
- Share your MCP servers and extensions
|
|
284
|
-
|
|
285
|
-
See our [Contributing Guide](./CONTRIBUTING.md) for development setup, coding standards, and how to submit pull requests.
|
|
286
|
-
|
|
287
|
-
Check our [Official Roadmap](https://github.com/orgs/google-gemini/projects/11/) for planned features and priorities.
|
|
288
170
|
|
|
289
|
-
##
|
|
171
|
+
## 📄 License
|
|
290
172
|
|
|
291
|
-
-
|
|
292
|
-
- **[NPM Package](https://www.npmjs.com/package/@google/gemini-cli)** - Package registry
|
|
293
|
-
- **[GitHub Issues](https://github.com/google-gemini/gemini-cli/issues)** - Report bugs or request features
|
|
294
|
-
- **[Security Advisories](https://github.com/google-gemini/gemini-cli/security/advisories)** - Security updates
|
|
173
|
+
This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.
|
|
295
174
|
|
|
296
|
-
|
|
175
|
+
## 🆘 Support
|
|
297
176
|
|
|
298
|
-
|
|
177
|
+
- 📚 [Documentation](https://github.com/10cl/shellx-cli)
|
|
178
|
+
- 🐛 [GitHub Issues](https://github.com/10cl/shellx-cli/issues)
|
|
179
|
+
- 📧 [Email Support](mailto:notice@toscl.com)
|
|
299
180
|
|
|
300
|
-
##
|
|
181
|
+
## 🙏 Acknowledgments
|
|
301
182
|
|
|
302
|
-
- **
|
|
303
|
-
- **
|
|
304
|
-
- **Security**: [Security Policy](SECURITY.md)
|
|
183
|
+
- **ShellX.ai**: For Android automation infrastructure
|
|
184
|
+
- **Open Source Community**: For contributions and feedback
|
|
305
185
|
|
|
306
186
|
---
|
|
307
187
|
|
|
308
|
-
|
|
309
|
-
Built with ❤️ by Google and the open source community
|
|
310
|
-
</p>
|
|
188
|
+
**Made with ❤️ by the ShellX team**
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|