novacode 0.2.0 → 0.4.0

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 (3) hide show
  1. package/README.md +15 -34
  2. package/package.json +2 -3
  3. package/src/main.ts +11 -9
package/README.md CHANGED
@@ -1,11 +1,12 @@
1
- # novacode
1
+ # NovaCode
2
2
 
3
- Open-source, multi-provider coding agent. Built with Bun.
3
+ Open-source, multi-provider coding agent.
4
4
 
5
5
  > **Currently in early development.**
6
6
 
7
- ## Install
7
+ <img width="1164" height="720" alt="result" src="https://github.com/user-attachments/assets/a456c41a-ec19-4a4d-b3b7-180e6b83acc3" />
8
8
 
9
+ ## Install
9
10
  Requires [Bun](https://bun.sh) >= 1.3.
10
11
 
11
12
  ```bash
@@ -22,21 +23,18 @@ You can also run without installing using `bunx novacode`.
22
23
 
23
24
  ## Quick Start
24
25
 
25
- ### 1. Launch novacode
26
+ ### 1. Launch nova
26
27
 
27
28
  ```bash
28
29
  nova
29
30
  ```
30
31
 
31
- `novacode` and `nova` are the same command — use whichever you prefer.
32
-
33
32
  ### 2. First-run setup
34
33
 
35
- On first launch, novacode walks you through a quick setup:
36
-
37
- 1. **Pick a provider** — GLM (Z.AI), Gemini (Google), DeepSeek, or OpenAI
38
- 2. **Enter your API key** — stored securely in `~/.novacode/auth.json`
39
- 3. **Pick a default model** — choose from the provider's available models
34
+ On first launch, nova walks you through a quick setup:
35
+ 1. **Pick a provider**
36
+ 2. **Enter your API key**
37
+ 3. **Pick a default model**
40
38
 
41
39
  That's it. You're ready to go.
42
40
 
@@ -57,33 +55,16 @@ nova "explain the auth module in this project"
57
55
  nova "fix the type error in src/utils.ts"
58
56
  ```
59
57
 
60
- ### 4. CLI flags
58
+ ### 4. Flags & commands
61
59
 
62
- ```bash
63
- nova # interactive mode
64
- nova "your prompt" # print mode
65
- nova --provider gemini # override provider
66
- nova --model gemini-2.5-pro # override model
67
- nova --api-key <key> # override API key
68
- nova -s <session-id> # resume a previous session
69
- nova session list # list saved sessions
70
- nova session delete <id> # delete a session
71
- nova -v # show version
72
- nova -h # show help
73
- ```
60
+ Available flags: `--provider`, `--model`, `--api-key`, `-s` (resume session)
61
+
62
+ Session commands: `nova session list`, `nova session delete <id>`
63
+
64
+ Run `nova -h` or type `/help` in interactive mode to see everything.
74
65
 
75
66
  ### Supported Providers
76
67
 
77
68
  GLM (Z.AI), Gemini (Google), DeepSeek, OpenAI
78
69
 
79
- You can set API keys via environment variables or let the onboarding wizard store them in `~/.novacode/auth.json`.
80
-
81
- ## Build from Source
82
70
 
83
- ```bash
84
- git clone https://github.com/rwitesh/novacode.git
85
- cd novacode
86
- bun install
87
- bun run dev # run with watch mode
88
- bun run build # compile to binary
89
- ```
package/package.json CHANGED
@@ -1,11 +1,10 @@
1
1
  {
2
2
  "name": "novacode",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "Open-source multi-provider coding agent. Bun-native.",
5
5
  "type": "module",
6
6
  "module": "src/main.ts",
7
7
  "bin": {
8
- "novacode": "src/main.ts",
9
8
  "nova": "src/main.ts"
10
9
  },
11
10
  "files": [
@@ -20,7 +19,7 @@
20
19
  "lint:fix": "biome check --write .",
21
20
  "format": "biome format --write .",
22
21
  "typecheck": "tsc --noEmit",
23
- "build": "bun build src/main.ts --compile --outfile novacode",
22
+ "build": "bun build src/main.ts --compile --outfile nova",
24
23
  "check": "bun run typecheck && bun run lint && bun test",
25
24
  "prepublishOnly": "bun run check"
26
25
  },
package/src/main.ts CHANGED
@@ -1,7 +1,9 @@
1
+ #!/usr/bin/env bun
1
2
  /**
2
- * Entry point for the novacode CLI.
3
+ * Entry point for the nova CLI.
3
4
  * Handles configuration, CLI flags, and switches between interactive/print modes.
4
5
  */
6
+ import { join } from "node:path"
5
7
  import { parseArgs } from "node:util"
6
8
  import { Agent } from "./agent/agent.ts"
7
9
  import { buildSystemPrompt } from "./agent/prompt.ts"
@@ -45,19 +47,19 @@ async function main() {
45
47
  const { flags, args } = parseCli()
46
48
 
47
49
  if (flags.version) {
48
- const pkg = await Bun.file("package.json").json()
49
- console.log(`novacode ${pkg.version}`)
50
+ const pkg = await Bun.file(join(import.meta.dir, "..", "package.json")).json()
51
+ console.log(`nova ${pkg.version}`)
50
52
  process.exit(0)
51
53
  }
52
54
 
53
55
  if (flags.help) {
54
- console.log(`novacode — open-source coding agent
56
+ console.log(`nova — open-source coding agent
55
57
 
56
58
  Usage:
57
- novacode Interactive mode
58
- novacode "prompt" Print mode (non-interactive)
59
- novacode session <cmd> Session management (list, delete)
60
- novacode --session <id> Resume a session
59
+ nova Interactive mode
60
+ nova "prompt" Print mode (non-interactive)
61
+ nova session <cmd> Session management (list, delete)
62
+ nova --session <id> Resume a session
61
63
 
62
64
  Options:
63
65
  -h, --help Show help
@@ -103,7 +105,7 @@ Options:
103
105
 
104
106
  if (!apiKey) {
105
107
  console.error(
106
- `No API key for ${provider.name}. Set ${provider.envKey} or run novacode for onboarding.`,
108
+ `No API key for ${provider.name}. Set ${provider.envKey} or run nova for onboarding.`,
107
109
  )
108
110
  process.exit(1)
109
111
  }