wiggum-cli 0.11.19 → 0.11.22
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/CONTRIBUTING.md +128 -34
- package/README.md +208 -311
- package/dist/generator/writer.d.ts.map +1 -1
- package/dist/generator/writer.js +36 -2
- package/dist/generator/writer.js.map +1 -1
- package/dist/tui/app.d.ts.map +1 -1
- package/dist/tui/app.js +7 -1
- package/dist/tui/app.js.map +1 -1
- package/dist/tui/screens/InterviewScreen.d.ts.map +1 -1
- package/dist/tui/screens/InterviewScreen.js +9 -0
- package/dist/tui/screens/InterviewScreen.js.map +1 -1
- package/package.json +11 -2
- package/.claude/settings.local.json +0 -49
- package/src/ai/agents/codebase-analyst.ts +0 -172
- package/src/ai/agents/codebase-analyzer.test.ts +0 -115
- package/src/ai/agents/codebase-analyzer.ts +0 -551
- package/src/ai/agents/context-enricher.test.ts +0 -190
- package/src/ai/agents/context-enricher.ts +0 -345
- package/src/ai/agents/evaluator-optimizer.ts +0 -353
- package/src/ai/agents/index.ts +0 -172
- package/src/ai/agents/mcp-detector.test.ts +0 -368
- package/src/ai/agents/mcp-detector.ts +0 -240
- package/src/ai/agents/orchestrator.ts +0 -221
- package/src/ai/agents/planning-orchestrator.ts +0 -144
- package/src/ai/agents/stack-researcher.ts +0 -317
- package/src/ai/agents/stack-utils.ts +0 -34
- package/src/ai/agents/synthesis-agent.ts +0 -286
- package/src/ai/agents/tech-researcher.test.ts +0 -156
- package/src/ai/agents/tech-researcher.ts +0 -370
- package/src/ai/agents/types.ts +0 -347
- package/src/ai/conversation/conversation-manager.ts +0 -319
- package/src/ai/conversation/index.ts +0 -30
- package/src/ai/conversation/interview-tools.ts +0 -332
- package/src/ai/conversation/spec-generator.ts +0 -665
- package/src/ai/conversation/url-fetcher.ts +0 -180
- package/src/ai/enhancer.ts +0 -657
- package/src/ai/index.ts +0 -99
- package/src/ai/prompts.ts +0 -312
- package/src/ai/providers.ts +0 -273
- package/src/ai/tools/context7.ts +0 -32
- package/src/ai/tools/index.ts +0 -15
- package/src/ai/tools/tavily.ts +0 -106
- package/src/ai/tools.ts +0 -289
- package/src/commands/config.test.ts +0 -225
- package/src/commands/config.ts +0 -162
- package/src/commands/init.ts +0 -25
- package/src/commands/monitor.ts +0 -412
- package/src/commands/new.ts +0 -151
- package/src/commands/run.ts +0 -214
- package/src/context/convert.test.ts +0 -129
- package/src/context/convert.ts +0 -159
- package/src/context/index.ts +0 -19
- package/src/context/storage.test.ts +0 -173
- package/src/context/storage.ts +0 -117
- package/src/context/types.ts +0 -52
- package/src/generator/config.ts +0 -120
- package/src/generator/index.ts +0 -227
- package/src/generator/templates.test.ts +0 -89
- package/src/generator/templates.ts +0 -546
- package/src/generator/writer.ts +0 -334
- package/src/index.ts +0 -207
- package/src/repl/command-parser.ts +0 -164
- package/src/repl/index.ts +0 -23
- package/src/repl/session-state.ts +0 -63
- package/src/scanner/detectors/core/framework.ts +0 -332
- package/src/scanner/detectors/core/packageManager.ts +0 -91
- package/src/scanner/detectors/core/styling.ts +0 -261
- package/src/scanner/detectors/core/testing.ts +0 -221
- package/src/scanner/detectors/data/api.ts +0 -303
- package/src/scanner/detectors/data/database.ts +0 -245
- package/src/scanner/detectors/data/orm.ts +0 -180
- package/src/scanner/detectors/frontend/formHandling.ts +0 -244
- package/src/scanner/detectors/frontend/stateManagement.ts +0 -261
- package/src/scanner/detectors/frontend/uiComponents.ts +0 -328
- package/src/scanner/detectors/infra/deployment.ts +0 -343
- package/src/scanner/detectors/infra/monorepo.ts +0 -251
- package/src/scanner/detectors/mcp/mcpProject.ts +0 -176
- package/src/scanner/detectors/mcp/mcpServers.ts +0 -237
- package/src/scanner/detectors/services/analytics.ts +0 -273
- package/src/scanner/detectors/services/auth.ts +0 -254
- package/src/scanner/detectors/services/email.ts +0 -244
- package/src/scanner/detectors/services/payments.ts +0 -213
- package/src/scanner/detectors/utils.ts +0 -251
- package/src/scanner/index.ts +0 -354
- package/src/scanner/registry.ts +0 -301
- package/src/scanner/types.ts +0 -152
- package/src/tui/app.tsx +0 -729
- package/src/tui/components/ActionOutput.tsx +0 -215
- package/src/tui/components/ChatInput.tsx +0 -363
- package/src/tui/components/CommandDropdown.tsx +0 -172
- package/src/tui/components/Confirm.tsx +0 -109
- package/src/tui/components/ErrorCard.tsx +0 -185
- package/src/tui/components/FooterStatusBar.test.ts +0 -18
- package/src/tui/components/FooterStatusBar.tsx +0 -58
- package/src/tui/components/MessageList.tsx +0 -243
- package/src/tui/components/PasswordInput.tsx +0 -114
- package/src/tui/components/PhaseHeader.tsx +0 -63
- package/src/tui/components/Select.tsx +0 -132
- package/src/tui/components/StatusLine.tsx +0 -76
- package/src/tui/components/StreamingText.tsx +0 -69
- package/src/tui/components/ToolCallCard.tsx +0 -272
- package/src/tui/components/WiggumBanner.tsx +0 -66
- package/src/tui/components/WorkingIndicator.tsx +0 -125
- package/src/tui/components/index.ts +0 -45
- package/src/tui/demo.tsx +0 -111
- package/src/tui/hooks/index.ts +0 -28
- package/src/tui/hooks/useCommandHistory.ts +0 -144
- package/src/tui/hooks/useInit.ts +0 -534
- package/src/tui/hooks/useSpecGenerator.ts +0 -699
- package/src/tui/hooks/useSync.ts +0 -80
- package/src/tui/index.ts +0 -23
- package/src/tui/orchestration/index.ts +0 -10
- package/src/tui/orchestration/interview-orchestrator.test.ts +0 -294
- package/src/tui/orchestration/interview-orchestrator.ts +0 -633
- package/src/tui/screens/InitScreen.tsx +0 -596
- package/src/tui/screens/InterviewScreen.tsx +0 -391
- package/src/tui/screens/MainShell.tsx +0 -406
- package/src/tui/screens/RunScreen.tsx +0 -405
- package/src/tui/screens/WelcomeScreen.tsx +0 -107
- package/src/tui/screens/index.ts +0 -18
- package/src/tui/theme.ts +0 -131
- package/src/tui/utils/input-utils.test.ts +0 -428
- package/src/tui/utils/input-utils.ts +0 -219
- package/src/tui/utils/loop-status.ts +0 -170
- package/src/utils/colors.ts +0 -248
- package/src/utils/config.ts +0 -221
- package/src/utils/env.test.ts +0 -402
- package/src/utils/env.ts +0 -128
- package/src/utils/header.ts +0 -49
- package/src/utils/json-repair.ts +0 -163
- package/src/utils/logger.ts +0 -28
- package/src/utils/spinner.ts +0 -262
- package/src/utils/tracing.ts +0 -119
- package/src/utils/tui.ts +0 -262
- package/src/utils/update-check.ts +0 -182
- package/tsconfig.json +0 -20
- package/vitest.config.ts +0 -7
package/CONTRIBUTING.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Contributing to Wiggum CLI
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Thanks for your interest in contributing! This guide covers everything you need to get started.
|
|
4
4
|
|
|
5
|
-
## What
|
|
5
|
+
## What We Accept
|
|
6
6
|
|
|
7
7
|
### Always welcome
|
|
8
8
|
- **Bug fixes** — Found something broken? PRs welcome
|
|
@@ -14,55 +14,149 @@ We welcome contributions! This document explains how to help and what to expect.
|
|
|
14
14
|
- **New commands** — Open an issue before coding to align on scope
|
|
15
15
|
- **TUI components** — Discuss architecture impacts first
|
|
16
16
|
- **Integrations** — New API integrations need maintainer approval
|
|
17
|
+
- **Large refactors** — These need alignment first
|
|
17
18
|
|
|
18
|
-
##
|
|
19
|
-
|
|
20
|
-
1. **Check existing issues** — Someone may already be working on it
|
|
21
|
-
2. **Open an issue first** — For anything beyond bug fixes, let's discuss before you code
|
|
22
|
-
3. **Wait for approval** — A maintainer will respond and give the go-ahead
|
|
23
|
-
4. **Keep PRs focused** — Small, single-purpose PRs are easier to review
|
|
24
|
-
5. **Add tests** — For bug fixes, include a test that would have caught it
|
|
25
|
-
|
|
26
|
-
## Development setup
|
|
19
|
+
## Getting Started
|
|
27
20
|
|
|
28
21
|
```bash
|
|
29
|
-
# Clone the repo
|
|
30
22
|
git clone https://github.com/federiconeri/wiggum-cli.git
|
|
31
23
|
cd wiggum-cli
|
|
24
|
+
npm install
|
|
25
|
+
npm run build
|
|
26
|
+
```
|
|
32
27
|
|
|
33
|
-
|
|
34
|
-
pnpm install
|
|
28
|
+
### Prerequisites
|
|
35
29
|
|
|
36
|
-
|
|
37
|
-
|
|
30
|
+
- **Node.js** >= 18.0.0
|
|
31
|
+
- **npm**
|
|
32
|
+
- **Git**
|
|
38
33
|
|
|
39
|
-
|
|
40
|
-
|
|
34
|
+
## Development
|
|
35
|
+
|
|
36
|
+
### Build
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
npm run build # Compile TypeScript + copy templates
|
|
40
|
+
npm run dev # Watch mode (recompiles on save)
|
|
41
41
|
```
|
|
42
42
|
|
|
43
|
-
|
|
43
|
+
### Test
|
|
44
44
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
45
|
+
```bash
|
|
46
|
+
npm test # Run all tests (vitest)
|
|
47
|
+
npm run test:watch # Watch mode
|
|
48
|
+
```
|
|
49
49
|
|
|
50
|
-
|
|
50
|
+
### Run locally
|
|
51
51
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
```bash
|
|
53
|
+
npm start # Runs bin/ralph.js
|
|
54
|
+
# or
|
|
55
|
+
node bin/ralph.js
|
|
56
|
+
```
|
|
55
57
|
|
|
56
|
-
|
|
58
|
+
## Project Structure
|
|
57
59
|
|
|
58
|
-
|
|
60
|
+
```
|
|
61
|
+
src/
|
|
62
|
+
├── ai/ # AI agents, conversation management, enhancers
|
|
63
|
+
├── commands/ # CLI command handlers (init, new, run, etc.)
|
|
64
|
+
├── context/ # Project context storage and conversion
|
|
65
|
+
├── generator/ # Template-based file generation
|
|
66
|
+
├── repl/ # REPL/interactive shell logic
|
|
67
|
+
├── scanner/ # Tech stack detection (80+ technologies)
|
|
68
|
+
├── templates/ # Templates for prompts, scripts, configs
|
|
69
|
+
├── terminal/ # Terminal utilities
|
|
70
|
+
├── tui/ # Ink-based terminal UI (screens, components, hooks)
|
|
71
|
+
├── utils/ # Shared utilities (config, env, tracing)
|
|
72
|
+
└── index.ts # Entry point
|
|
73
|
+
```
|
|
59
74
|
|
|
60
|
-
|
|
75
|
+
Tests live next to source files as `*.test.ts`.
|
|
61
76
|
|
|
62
|
-
##
|
|
77
|
+
## Making Changes
|
|
63
78
|
|
|
64
|
-
|
|
79
|
+
### Branch naming
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
feat/short-description # New features
|
|
83
|
+
fix/short-description # Bug fixes
|
|
84
|
+
chore/short-description # Maintenance, refactoring
|
|
85
|
+
docs/short-description # Documentation
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### Commit messages
|
|
89
|
+
|
|
90
|
+
We use [Conventional Commits](https://www.conventionalcommits.org/):
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
feat: add spec autocomplete to /run command
|
|
94
|
+
fix(tui): handle empty input in interview screen
|
|
95
|
+
chore: bump version to 0.11.19
|
|
96
|
+
docs: update CLI reference in README
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
**Format:** `type(scope): description`
|
|
100
|
+
|
|
101
|
+
| Type | When to use |
|
|
102
|
+
|------|------------|
|
|
103
|
+
| `feat` | New feature or capability |
|
|
104
|
+
| `fix` | Bug fix |
|
|
105
|
+
| `chore` | Maintenance, deps, version bumps |
|
|
106
|
+
| `docs` | Documentation only |
|
|
107
|
+
| `refactor` | Code change that neither fixes nor adds a feature |
|
|
108
|
+
| `test` | Adding or updating tests |
|
|
109
|
+
|
|
110
|
+
Common scopes: `tui`, `ai`, `cli`, `scanner`, `loop`.
|
|
111
|
+
|
|
112
|
+
## Pull Requests
|
|
113
|
+
|
|
114
|
+
1. Fork the repo and create your branch from `main`
|
|
115
|
+
2. Make your changes and add tests if applicable
|
|
116
|
+
3. Ensure `npm test` and `npm run build` pass
|
|
117
|
+
4. Write a clear PR title using the commit convention format
|
|
118
|
+
5. Reference the related issue in your PR description
|
|
119
|
+
6. Keep PRs small and focused — single-purpose PRs are easier to review
|
|
120
|
+
|
|
121
|
+
## Code Style
|
|
122
|
+
|
|
123
|
+
- **TypeScript** with strict mode enabled
|
|
124
|
+
- **ESM** modules (`import`/`export`, `.js` extensions in imports)
|
|
125
|
+
- **React JSX** for TUI components (Ink)
|
|
126
|
+
- Run `npm run build` to catch type errors before submitting
|
|
127
|
+
|
|
128
|
+
## Reporting Bugs
|
|
129
|
+
|
|
130
|
+
[Open an issue](https://github.com/federiconeri/wiggum-cli/issues/new) with:
|
|
131
|
+
|
|
132
|
+
- Steps to reproduce
|
|
133
|
+
- Expected vs actual behavior
|
|
134
|
+
- Node.js version (`node -v`)
|
|
135
|
+
- Wiggum version (`wiggum --version`)
|
|
136
|
+
- OS and terminal
|
|
137
|
+
|
|
138
|
+
## Feature Requests
|
|
139
|
+
|
|
140
|
+
[Open an issue](https://github.com/federiconeri/wiggum-cli/issues/new) describing:
|
|
141
|
+
|
|
142
|
+
- The problem you're trying to solve
|
|
143
|
+
- Your proposed solution
|
|
144
|
+
- Any alternatives you considered
|
|
145
|
+
|
|
146
|
+
## Out of Scope
|
|
147
|
+
|
|
148
|
+
We don't accept PRs for these areas without prior discussion:
|
|
149
|
+
|
|
150
|
+
- **Core AI logic** — Maintained internally to ensure consistency and quality
|
|
151
|
+
- **Paid features** — Dashboard, API infrastructure, cloud environment, and notification systems are developed separately
|
|
152
|
+
- **Large refactors without discussion** — These need alignment with the maintainer first
|
|
153
|
+
|
|
154
|
+
PRs in these areas without prior discussion will likely be closed.
|
|
155
|
+
|
|
156
|
+
## Security Issues
|
|
157
|
+
|
|
158
|
+
Please don't open a public issue. Email security concerns directly to the maintainers.
|
|
65
159
|
|
|
66
|
-
|
|
160
|
+
## License
|
|
67
161
|
|
|
68
|
-
|
|
162
|
+
By contributing, you agree that your contributions will be licensed under the project's [MIT + Commons Clause license](LICENSE).
|