@compass-ai/nova 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.
- package/README.md +243 -0
- package/dist/cli.js +1459 -0
- package/dist/index.js +1116 -0
- package/package.json +108 -0
package/README.md
ADDED
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
# Nova CLI
|
|
2
|
+
|
|
3
|
+
> AI-Powered Development Assistant for Your Terminal by Compass Agentic Platform
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/@compass-ai/nova)
|
|
6
|
+
[](https://nodejs.org/)
|
|
7
|
+
[](https://www.typescriptlang.org/)
|
|
8
|
+
[](LICENSE)
|
|
9
|
+
|
|
10
|
+
Nova brings the power of advanced AI language models directly to your terminal. Write code, debug issues, refactor projects, and understand complex codebases using natural language - all without leaving your command line.
|
|
11
|
+
|
|
12
|
+
## Why Nova?
|
|
13
|
+
|
|
14
|
+
- **💬 Natural Conversations** - Describe what you want in plain English, Nova handles the implementation
|
|
15
|
+
- **🔍 Deep Code Understanding** - Intelligent indexing and semantic search across your entire codebase
|
|
16
|
+
- **🔒 Safe by Default** - Three-tier approval system ensures you're always in control of file changes
|
|
17
|
+
- **⚡ Blazingly Fast** - Stream responses in real-time with state-of-the-art language models
|
|
18
|
+
- **🛠️ Built for Developers** - Git integration, shell execution, session management, and more
|
|
19
|
+
|
|
20
|
+
## Quick Start
|
|
21
|
+
|
|
22
|
+
### Install
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npm install -g @compass-ai/nova
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### Setup
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
nova setup
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
You'll be guided through API key configuration and consent management.
|
|
35
|
+
|
|
36
|
+
### Start Using Nova
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# In any project directory
|
|
40
|
+
nova
|
|
41
|
+
|
|
42
|
+
# Then ask Nova to help with anything:
|
|
43
|
+
❯ Help me refactor this authentication module to use JWT
|
|
44
|
+
❯ Find all the files that handle user permissions
|
|
45
|
+
❯ Create a git commit with a descriptive message for my changes
|
|
46
|
+
❯ Explain how the payment processing flow works
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Key Features
|
|
50
|
+
|
|
51
|
+
### AI-Powered Development
|
|
52
|
+
Nova leverages advanced language models to provide intelligent assistance for:
|
|
53
|
+
- Writing and refactoring code
|
|
54
|
+
- Debugging and fixing issues
|
|
55
|
+
- Explaining complex codebases
|
|
56
|
+
- Generating documentation
|
|
57
|
+
- Creating git commits and PRs
|
|
58
|
+
|
|
59
|
+
### Smart Codebase Understanding
|
|
60
|
+
- **File Indexing** - Automatically indexes your project structure
|
|
61
|
+
- **Semantic Search** - Find relevant code using natural language
|
|
62
|
+
- **Dependency Analysis** - Understand relationships between files and modules
|
|
63
|
+
- **Context-Aware** - Nova maintains conversation history with 200K token context window
|
|
64
|
+
|
|
65
|
+
### Safe File Operations
|
|
66
|
+
- **Manual Mode** (Default) - Review every change before it's applied
|
|
67
|
+
- **Auto Mode** - Safe operations approved automatically, risky ones require review
|
|
68
|
+
- **Strict Mode** - Maximum safety, all operations require explicit approval
|
|
69
|
+
- **Automatic Backups** - Changes are backed up before modification
|
|
70
|
+
- **Undo Support** - Roll back changes with `/undo`
|
|
71
|
+
|
|
72
|
+
### Developer Workflow Integration
|
|
73
|
+
- **Git Operations** - Intelligent commits, PR descriptions, conflict resolution
|
|
74
|
+
- **Shell Execution** - Run commands with cross-platform support
|
|
75
|
+
- **Session Management** - Save, load, and export conversation history
|
|
76
|
+
- **Token Tracking** - Monitor usage and costs in real-time
|
|
77
|
+
|
|
78
|
+
## Common Use Cases
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
# Code refactoring
|
|
82
|
+
❯ Refactor the user service to follow SOLID principles
|
|
83
|
+
|
|
84
|
+
# Debugging
|
|
85
|
+
❯ I'm getting a null pointer error in checkout.ts line 45, help me fix it
|
|
86
|
+
|
|
87
|
+
# Code understanding
|
|
88
|
+
❯ Explain how the authentication flow works in this codebase
|
|
89
|
+
|
|
90
|
+
# Documentation
|
|
91
|
+
❯ Generate JSDoc comments for all functions in src/utils/
|
|
92
|
+
|
|
93
|
+
# Git operations
|
|
94
|
+
❯ Create a commit for my changes with a descriptive message
|
|
95
|
+
❯ Help me write a PR description for this feature
|
|
96
|
+
|
|
97
|
+
# Testing
|
|
98
|
+
❯ Write unit tests for the payment processing module
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Interactive Commands
|
|
102
|
+
|
|
103
|
+
During a session, use these slash commands:
|
|
104
|
+
|
|
105
|
+
| Command | Description |
|
|
106
|
+
|---------|-------------|
|
|
107
|
+
| `/help` | Show available commands |
|
|
108
|
+
| `/model [name]` | Switch between sonnet, opus, haiku |
|
|
109
|
+
| `/approve [mode]` | Toggle approval modes |
|
|
110
|
+
| `/save [name]` | Save current session |
|
|
111
|
+
| `/load [name]` | Load a saved session |
|
|
112
|
+
| `/tokens` | View token usage stats |
|
|
113
|
+
| `/undo` | Undo last file operation |
|
|
114
|
+
| `/clear` | Clear conversation history |
|
|
115
|
+
| `/exit` | Exit Nova |
|
|
116
|
+
|
|
117
|
+
## Custom Slash Commands
|
|
118
|
+
|
|
119
|
+
Define your own slash commands as Markdown files for frequently used prompts.
|
|
120
|
+
|
|
121
|
+
### Creating Commands
|
|
122
|
+
|
|
123
|
+
**Project commands** (shared with team):
|
|
124
|
+
```bash
|
|
125
|
+
mkdir -p .compass/commands
|
|
126
|
+
echo "Analyze this code for performance issues:" > .compass/commands/optimize.md
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
**Personal commands** (available everywhere):
|
|
130
|
+
```bash
|
|
131
|
+
mkdir -p ~/.compass/commands
|
|
132
|
+
echo "Review this code for security issues:" > ~/.compass/commands/security.md
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
### Features
|
|
136
|
+
|
|
137
|
+
- **Arguments**: Use `$ARGUMENTS` for all args, or `$1`, `$2` for positional
|
|
138
|
+
- **File references**: Include files with `@src/file.ts`
|
|
139
|
+
- **Bash execution**: Run commands with `!`git status``
|
|
140
|
+
- **Frontmatter**: Configure with YAML metadata
|
|
141
|
+
|
|
142
|
+
### Example Command
|
|
143
|
+
|
|
144
|
+
```markdown
|
|
145
|
+
---
|
|
146
|
+
allowed-tools: Bash(git:*)
|
|
147
|
+
argument-hint: [issue-number]
|
|
148
|
+
description: Fix a GitHub issue
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## Context
|
|
152
|
+
- Current branch: !`git branch --show-current`
|
|
153
|
+
- Recent commits: !`git log --oneline -5`
|
|
154
|
+
|
|
155
|
+
## Task
|
|
156
|
+
Fix issue #$1 following our coding standards.
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Usage: `/fix-issue 123`
|
|
160
|
+
|
|
161
|
+
See [Custom Commands Documentation](docs/custom-commands.md) for full details.
|
|
162
|
+
|
|
163
|
+
## Configuration
|
|
164
|
+
|
|
165
|
+
Nova uses a hierarchical configuration system:
|
|
166
|
+
|
|
167
|
+
1. **Default values** - Sensible built-in defaults
|
|
168
|
+
2. **Global config** - `~/.compass/config.json`
|
|
169
|
+
3. **Project config** - `./.compass/config.json`
|
|
170
|
+
4. **Environment variables** - Override any setting
|
|
171
|
+
|
|
172
|
+
### Environment Variables
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
ANTHROPIC_API_KEY=your_api_key_here # When using Anthropic models
|
|
176
|
+
COMPASS_MODEL=sonnet # Model configuration
|
|
177
|
+
COMPASS_DEBUG=true # Enable debug logging
|
|
178
|
+
NO_COLOR=1 # Disable colored output
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
## Privacy & Security
|
|
182
|
+
|
|
183
|
+
Nova is designed with privacy and security as core principles:
|
|
184
|
+
|
|
185
|
+
- **Local-First** - All data stored on your machine
|
|
186
|
+
- **Explicit Consent** - Required before any data collection
|
|
187
|
+
- **GDPR Compliant** - Full data export and deletion capabilities
|
|
188
|
+
- **Encrypted Credentials** - API keys stored securely
|
|
189
|
+
- **Automatic Expiration** - Session data expires after 30 days
|
|
190
|
+
|
|
191
|
+
## AI Model Support
|
|
192
|
+
|
|
193
|
+
Nova supports multiple AI model providers and configurations. The default setup includes support for state-of-the-art language models with:
|
|
194
|
+
- Large context windows (up to 200K tokens)
|
|
195
|
+
- Streaming responses for real-time feedback
|
|
196
|
+
- Advanced reasoning capabilities
|
|
197
|
+
- Vision and tool use support
|
|
198
|
+
|
|
199
|
+
## Requirements
|
|
200
|
+
|
|
201
|
+
- Node.js >= 18.0.0
|
|
202
|
+
- API key for your chosen AI provider (e.g., [Anthropic](https://console.anthropic.com/))
|
|
203
|
+
|
|
204
|
+
## Troubleshooting
|
|
205
|
+
|
|
206
|
+
### API Key Issues
|
|
207
|
+
```bash
|
|
208
|
+
# Reconfigure your API key
|
|
209
|
+
nova setup
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### Reset to Defaults
|
|
213
|
+
```bash
|
|
214
|
+
nova reset --force
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
### Enable Debug Mode
|
|
218
|
+
```bash
|
|
219
|
+
COMPASS_DEBUG=true nova
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
## Contributing
|
|
223
|
+
|
|
224
|
+
Contributions are welcome! Please read our contributing guidelines before submitting pull requests.
|
|
225
|
+
|
|
226
|
+
## License
|
|
227
|
+
|
|
228
|
+
MIT License - see [LICENSE](LICENSE) for details.
|
|
229
|
+
|
|
230
|
+
## Links
|
|
231
|
+
|
|
232
|
+
- [npm Package](https://www.npmjs.com/package/@compass-ai/nova)
|
|
233
|
+
- [Report Issues](https://github.com/your-org/nova/issues)
|
|
234
|
+
- [Documentation](docs/README.md)
|
|
235
|
+
- [Compass Official](https://compassap.ai/)
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
**Ready to supercharge your development workflow?** Install Nova and start building with AI assistance today.
|
|
240
|
+
|
|
241
|
+
```bash
|
|
242
|
+
npm install -g @compass-ai/nova && nova setup
|
|
243
|
+
```
|