openkitt 0.3.13 → 0.3.18
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 +17 -9
- package/dist/cli.js +1795 -1365
- package/package.json +4 -2
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@ KITT is an interactive terminal interface that scaffolds full-stack monorepos, a
|
|
|
11
11
|
_ /| | __/ / _ / _ /
|
|
12
12
|
/_/ |_| /___/ /_/ /_/
|
|
13
13
|
|
|
14
|
-
KITT v0.
|
|
14
|
+
KITT v0.3.17 — AI-Powered App Scaffolding CLI
|
|
15
15
|
```
|
|
16
16
|
|
|
17
17
|
---
|
|
@@ -35,12 +35,12 @@ KITT eliminates that tax. It scaffolds a production-ready monorepo in one comman
|
|
|
35
35
|
## Features
|
|
36
36
|
|
|
37
37
|
- **Interactive REPL** with tab-completion and ghost text suggestions
|
|
38
|
-
- **AI scaffolding** — uses your LLM key (Anthropic, OpenAI, or
|
|
38
|
+
- **AI scaffolding** — uses your LLM key (Anthropic, OpenAI, Gemini, or GitHub Copilot) to generate app code, wire integrations, and provision Railway infrastructure
|
|
39
39
|
- **Monorepo workspace** with `apps/` and `packages/` following convention
|
|
40
40
|
- **Framework support**: TanStack Start, Next.js, Hono, Express
|
|
41
41
|
- **Integration catalog**: databases, auth, payments, email, queues, caching, UI, analytics, testing
|
|
42
42
|
- **Version management** — pin integration versions, check for updates, apply selectively
|
|
43
|
-
- **
|
|
43
|
+
- **Sandbox & secret scan** — stages LLM-generated files for review before writing to disk; blocks deploys if `.env` files containing secrets would be committed
|
|
44
44
|
- **Non-interactive mode** — scriptable via `--run` flag for CI pipelines
|
|
45
45
|
- **Auto update check** — notifies on new releases at startup
|
|
46
46
|
|
|
@@ -50,7 +50,11 @@ KITT eliminates that tax. It scaffolds a production-ready monorepo in one comman
|
|
|
50
50
|
|
|
51
51
|
- Node.js ≥ 20
|
|
52
52
|
- [Railway CLI](https://docs.railway.app/develop/cli) installed and authenticated
|
|
53
|
-
-
|
|
53
|
+
- One of the following LLM providers configured:
|
|
54
|
+
- **Anthropic** — API key (claude-sonnet-4-5, claude-opus-4-5, claude-3-5-haiku)
|
|
55
|
+
- **OpenAI** — API key (gpt-4o, gpt-4o-mini, o1, o1-mini)
|
|
56
|
+
- **Gemini** — API key (gemini-2.0-flash, gemini-2.0-flash-lite, gemini-1.5-pro)
|
|
57
|
+
- **GitHub Copilot** — device OAuth flow (claude-haiku-4.5, gpt-4.1, claude-sonnet-4.6, claude-opus-4.6)
|
|
54
58
|
|
|
55
59
|
---
|
|
56
60
|
|
|
@@ -70,7 +74,7 @@ npx openkitt
|
|
|
70
74
|
kitt > /login
|
|
71
75
|
```
|
|
72
76
|
|
|
73
|
-
This walks you through Railway authentication (browser OAuth) and LLM provider setup (provider, model, API key). You only do this once — credentials are stored locally.
|
|
77
|
+
This walks you through Railway authentication (browser OAuth) and LLM provider setup (provider, model, API key or GitHub Copilot device flow). You only do this once — credentials are stored locally.
|
|
74
78
|
|
|
75
79
|
### 2. Initialize a workspace
|
|
76
80
|
|
|
@@ -130,8 +134,9 @@ Selects the app, generates `railway.toml` if needed, scans for exposed secrets,
|
|
|
130
134
|
|---|---|
|
|
131
135
|
| `/login` | Full auth setup — Railway + LLM in one flow |
|
|
132
136
|
| `/login railway` | Authenticate with Railway only |
|
|
133
|
-
| `/login llm` | Configure LLM provider, model, and
|
|
134
|
-
| `/login model` | Switch model without re-entering your key |
|
|
137
|
+
| `/login llm` | Configure LLM provider, model, and auth method |
|
|
138
|
+
| `/login model` | Switch active model without re-entering your key |
|
|
139
|
+
| `/login status` | Show current auth status for Railway and LLM |
|
|
135
140
|
| `/logout` | Remove all stored credentials |
|
|
136
141
|
|
|
137
142
|
### Workspace
|
|
@@ -153,6 +158,7 @@ Selects the app, generates `railway.toml` if needed, scans for exposed secrets,
|
|
|
153
158
|
| `/deploy:template <name>` | Provision infrastructure — `PostgreSQL`, `MySQL`, `Redis`, `MinIO` |
|
|
154
159
|
| `/env:create <name>` | Create a new Railway environment |
|
|
155
160
|
| `/env:vars [service]` | List environment variables for a service |
|
|
161
|
+
| `/env:vars set [service] <key> <value>` | Set an environment variable |
|
|
156
162
|
| `/domain [appName]` | Generate or show the Railway domain for an app |
|
|
157
163
|
| `/logs [appName]` | Tail deployment logs |
|
|
158
164
|
| `/status` | Show workspace status and Railway deployment health |
|
|
@@ -219,16 +225,18 @@ KITT supports scriptable execution via `--run`:
|
|
|
219
225
|
npx openkitt --run "deploy my-app" --yes --env production
|
|
220
226
|
```
|
|
221
227
|
|
|
222
|
-
State-changing commands (`init`, `create`, `delete`, `deploy`, `env:create`, `env:vars`, `domain`) require `--yes` in non-interactive mode.
|
|
228
|
+
State-changing commands (`init`, `create`, `delete`, `deploy`, `deploy:template`, `env:create`, `env:vars`, `domain`) require `--yes` in non-interactive mode.
|
|
223
229
|
|
|
224
230
|
---
|
|
225
231
|
|
|
226
232
|
## How it works
|
|
227
233
|
|
|
228
|
-
KITT uses an LLM (via your API key) together with Railway's [MCP server](https://github.com/railwayapp/mcp-server) to perform Railway operations — creating projects, provisioning services, setting environment variables, and deploying. The LLM orchestrates MCP tool calls; KITT acts as the secure intermediary, enforcing a project-scoped guard so operations are confined to your linked Railway project.
|
|
234
|
+
KITT uses an LLM (via your API key or GitHub Copilot) together with Railway's [MCP server](https://github.com/railwayapp/mcp-server) to perform Railway operations — creating projects, provisioning services, setting environment variables, and deploying. The LLM orchestrates MCP tool calls; KITT acts as the secure intermediary, enforcing a project-scoped guard so operations are confined to your linked Railway project.
|
|
229
235
|
|
|
230
236
|
For `hono` and `expressjs` apps, scaffolding is fully static — the LLM generates code at creation time only. For `tanstack-start` and `nextjs`, full server and client capabilities are available.
|
|
231
237
|
|
|
238
|
+
Generated code is staged to `.kitt/staging/` for review before being written to disk. A security scanner validates files for suspicious patterns, path traversal, and restricted file types before applying changes.
|
|
239
|
+
|
|
232
240
|
---
|
|
233
241
|
|
|
234
242
|
## License
|