Skip to content

Commit 68cd4e9

Browse files
Merge pull request #6 from Mitii-dev/v2.7.x
Add support for AWS Bedrock, Azure OpenAI, OpenRouter, and new features
2 parents 1e06acc + e47cd01 commit 68cd4e9

210 files changed

Lines changed: 35257 additions & 12718 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
8+
jobs:
9+
test:
10+
name: test (${{ matrix.os }})
11+
runs-on: ${{ matrix.os }}
12+
strategy:
13+
fail-fast: false
14+
matrix:
15+
os: [ubuntu-latest, macos-latest, windows-latest]
16+
17+
steps:
18+
- uses: actions/checkout@v4
19+
- uses: pnpm/action-setup@v4
20+
- uses: actions/setup-node@v4
21+
with:
22+
node-version: 20
23+
cache: pnpm
24+
- run: pnpm install --frozen-lockfile
25+
- run: pnpm run release:check-assets
26+
- run: pnpm test
27+
- run: pnpm run compile:cli
28+
- run: pnpm run benchmark:smoke
29+
- run: pnpm run eval:smoke

.github/workflows/release.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*'
7+
8+
jobs:
9+
package:
10+
runs-on: ubuntu-latest
11+
permissions:
12+
contents: write
13+
steps:
14+
- uses: actions/checkout@v4
15+
- uses: pnpm/action-setup@v4
16+
- uses: actions/setup-node@v4
17+
with:
18+
node-version: 20
19+
cache: pnpm
20+
- run: pnpm install --frozen-lockfile
21+
- run: pnpm run compile
22+
- run: pnpm exec vsce package
23+
- name: Generate release notes
24+
run: node dist/cli.js changelog > release-notes.md
25+
- uses: softprops/action-gh-release@v2
26+
with:
27+
body_path: release-notes.md
28+
files: '*.vsix'

.gitignore

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,24 @@ dist/
88
.thunder V2/
99
.mitii
1010
project-goals/
11-
mitii-debug-logs/
11+
mitii-debug-logs/
12+
13+
# Benchmark / eval runtime (local generation and reports)
14+
tools/benchmark/tasks/eval/generated/
15+
tools/benchmark/tasks/eval/generated-smoke/
16+
tools/benchmark/results/
17+
18+
# Fixture sandboxes — deps, builds, Mitii session state
19+
tools/benchmark/fixtures/**/.mitii/
20+
tools/benchmark/fixtures/**/.next/
21+
tools/benchmark/fixtures/**/dist/
22+
tools/benchmark/fixtures/**/node_modules/
23+
tools/benchmark/fixtures/**/package-lock.json
24+
tools/benchmark/fixtures/**/pnpm-lock.yaml
25+
26+
# Agent-created during eval (not part of pinned fixture baseline)
27+
tools/benchmark/fixtures/**/docs/
28+
tools/benchmark/fixtures/**/index.html
29+
tools/benchmark/fixtures/**/src/index.css
30+
tools/benchmark/fixtures/**/src/main.ts
31+
tools/benchmark/fixtures/**/src/main.tsx

.npmrc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# vsce runs `npm list` to resolve production dependencies; pnpm's default
2+
# isolated linker hoists transitive packages that npm treats as extraneous.
3+
node-linker=hoisted

.vscode/tasks.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
{
1212
"label": "thunder: rebuild native",
1313
"type": "shell",
14-
"command": "npm run rebuild:native",
14+
"command": "pnpm run rebuild:native",
1515
"problemMatcher": [],
1616
"presentation": { "reveal": "always", "panel": "shared" }
1717
},

.vscodeignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ scripts/**
1818
.gitignore
1919
.vscodeignore
2020
package-lock.json
21+
pnpm-lock.yaml
2122
tsconfig.json
2223
vite.config.ts
2324
vitest.config.ts
@@ -26,4 +27,5 @@ vitest.config.ts
2627

2728
!dist/**
2829
!media/**
29-
!bundled-skills/**
30+
31+
tools/benchmark/**

CHANGELOG.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Changelog
2+
3+
## [Unreleased]
4+
5+
## [2.7.17] - 2026-07-02
6+
7+
### Added
8+
- Implemented the backlog end-to-end across the repo. What changed: Added diff-first micro-task routing for commit messages, changelog entries, and release notes. Unified SCM commit message generation through the new micro-task executor. Added changelog/release generation core, VS Code commands, CHANGELOG.md, and CI release workflow. Added one-click audit pack export with zip generation, redaction report, manifest, tool audit, and approvals. Improved reasoning stream UI: live reveal, no 1200-char hard cap, configurable visibility/preview size. Added enterprise settings/docs for local-only providers, audit redaction, procurement/security/compliance. Added Windows path hardening, Windows CI matrix, and Windows smoke checklist. Added CLI MVP for changelog, prepare-release, and export-audit. Updated README with the new enterprise, audit, release, CLI, and reasoning features. Added focused tests for all new core implementations. (8a00fd537ef2)
9+
- add AWS Bedrock, Azure OpenAI, and OpenRouter provider support (cac73bc1a9a7)
10+
- **modes:** add pilot and enterprise depth levels to Ask, Plan, and Act modes (ca3d2daf6375)
11+
- **orchestrator:** add planning clarification question flow with resume support (0d052937fb8e)
12+
- auto-discover verify commands, add retry with install, cap sequential-thinking calls (6786a1d904fe)
13+
- improve plan step UI, add skipped tool handling, and strip channel markers (d65a81752037)
14+
- add GitHub token setting and improve issue comment pagination (7c8e53d68036)
15+
- Implemented the core folder structure migration safely. (017ddd4d0766)
16+
- auto-fetch GitHub issue context when user pastes an issue URL (1f0b368dfb50)
17+
- add retrieval timing metrics, repeated tool failure guard, and Act mode MCP exclusions (dda2e8f38881)
18+
- add Act orchestration boundary for Agent mode execution (0620f2e55902)
19+
- **docs:** update README with enhanced project description, features, and usage instructions (920bf12f6f38)
20+
- **plan:** add skill-aware planning pipeline with phased PlanPanel UI (e23f19d9e929)
21+
- bundle skill playbooks inside extension and auto-install on workspace init (07a83238eb87)
22+
- add planDepth setting and skill frontmatter parsing (d77ed8f6062f)
23+
- **plan-mode:** add Plan mode orchestration with intent routing and read-only grounding (14372af57d12)
24+
- **core:** add file read caching and parallelize read files tool (95dee1dbc8ac)
25+
- **scm:** add AI-generated commit messages and ask-mode depth controls (8ea94111e43f)
26+
- **ask:** add structured ask mode with intent routing, scope resolution, and impact analysis (aa2660f9ef3d)
27+
28+
### Changed
29+
- add project-goals entry to .gitignore configuration (81ecf0da086c)
30+
- Merge branch 'main' of https://github.com/codewithshinde/thunder-ai-agent (957469705bc4)
31+
- **tools:** remove unused resolveToolDirPath and related imports (44a3dd3d0a8c)

CONTRIBUTING.md

Lines changed: 40 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ For bugs and feature ideas, open an [issue](https://github.com/codewithshinde/th
2020
|------|---------|
2121
| VS Code | 1.85+ (or Cursor, with native rebuild noted below) |
2222
| Node.js | 20+ |
23-
| npm | 9+ (ships with Node 20) |
23+
| pnpm | 10.13+ |
2424
| git | any recent version |
2525

2626
Optional but useful for full feature coverage:
@@ -36,12 +36,12 @@ Optional but useful for full feature coverage:
3636
```bash
3737
git clone https://github.com/codewithshinde/thunder-ai-agent.git
3838
cd thunder-ai-agent
39-
npm install
40-
npm run rebuild:native # required for better-sqlite3 in VS Code
41-
npm run compile
39+
pnpm install
40+
pnpm run rebuild:native # required for better-sqlite3 in VS Code
41+
pnpm run compile
4242
```
4343

44-
Git hooks are installed automatically via `npm install` `prepare` `scripts/install-git-hooks.mjs`. The pre-commit hook stages version bumps from `scripts/bump-version.mjs`.
44+
Git hooks are installed automatically via `pnpm install` -> `prepare` -> `scripts/install-git-hooks.mjs`. The pre-commit hook stages version bumps from `scripts/bump-version.mjs`.
4545

4646
### Launch the extension
4747

@@ -53,7 +53,7 @@ Git hooks are installed automatically via `npm install` → `prepare` → `scrip
5353
### Watch mode (day-to-day dev)
5454

5555
```bash
56-
npm run watch
56+
pnpm run watch
5757
```
5858

5959
Rebuilds the extension bundle and webview on save. Reload the Extension Development Host window after extension-side changes (`Ctrl/Cmd+R` in the host window, or restart the debug session).
@@ -63,7 +63,7 @@ Rebuilds the extension bundle and webview on save. Reload the Extension Developm
6363
## Project layout
6464

6565
```
66-
thunder-ai-agent/
66+
mitii-ai-agent/
6767
├── src/
6868
│ ├── extension.ts # VS Code entry point
6969
│ ├── core/ # Agent logic (editor-agnostic)
@@ -89,7 +89,9 @@ thunder-ai-agent/
8989
│ └── src/
9090
├── test/ # Vitest tests
9191
├── scripts/ # Build, audit, hook helpers
92+
├── tools/benchmark/ # @mitii/benchmark — fixtures, enterprise + eval harness
9293
├── dist/ # Compiled output (gitignored)
94+
├── pnpm-workspace.yaml # Workspace: tools/*
9395
└── package.json # Extension manifest + settings schema
9496
```
9597

@@ -100,7 +102,20 @@ thunder-ai-agent/
100102

101103
Scaffolds may exist at `mitii-docs/` and `mitii-website/` in this tree while you split them out. Brand constants: `src/shared/brand.ts` (sync with each repo's `brand.ts`).
102104

103-
**Rule of thumb:** keep VS Code APIs out of `src/core/`. Core should be testable without launching an editor. Put platform glue in `src/vscode/`.
105+
**Rule of thumb:** keep VS Code APIs out of `src/core/`. Core should be testable without launching an editor. Put platform glue in `src/vscode/`. Keep benchmark and eval in `tools/benchmark/` — they are not extension runtime code.
106+
107+
### Benchmark and eval
108+
109+
```bash
110+
pnpm run compile:cli
111+
pnpm run benchmark:smoke
112+
pnpm run eval:preflight # before real-runtime eval
113+
pnpm run eval:generate
114+
pnpm run eval:standard -- --provider openai-compatible \
115+
--base-url http://localhost:11434/v1 --model qwen3-coder:30b --limit 50
116+
```
117+
118+
See [tools/benchmark/README.md](tools/benchmark/README.md) for sharded runs, Ollama matrix, and Inspect AI.
104119

105120
---
106121

@@ -109,23 +124,23 @@ Scaffolds may exist at `mitii-docs/` and `mitii-website/` in this tree while you
109124
### Run tests
110125

111126
```bash
112-
npm run rebuild:node # if better-sqlite3 fails under vitest
113-
npm test # full suite
114-
npm run test:watch # watch mode
115-
npm run smoke # smoke tests only
127+
pnpm run rebuild:node # if better-sqlite3 fails under vitest
128+
pnpm test # full suite
129+
pnpm run test:watch # watch mode
130+
pnpm run smoke # smoke tests only
116131
```
117132

118133
### Typecheck
119134

120135
```bash
121-
npm run lint # tsc --noEmit
136+
pnpm run lint # tsc --noEmit
122137
```
123138

124139
### Build a VSIX
125140

126141
```bash
127-
npm run compile
128-
npm run package # outputs thunder-ai-agent-<version>.vsix
142+
pnpm run compile
143+
pnpm run package # outputs thunder-ai-agent-<version>.vsix
129144
```
130145

131146
Install locally: **Extensions → ... → Install from VSIX**.
@@ -134,20 +149,20 @@ Install locally: **Extensions → ... → Install from VSIX**.
134149

135150
| Scenario | Command |
136151
|----------|---------|
137-
| F5 / VS Code extension host | `npm run rebuild:native` |
138-
| Cursor extension host | `THUNDER_EDITOR=cursor npm run rebuild:native` |
139-
| Local vitest | `npm run rebuild:node` |
140-
| Both | `npm run rebuild:all` |
152+
| F5 / VS Code extension host | `pnpm run rebuild:native` |
153+
| Cursor extension host | `THUNDER_EDITOR=cursor pnpm run rebuild:native` |
154+
| Local vitest | `pnpm run rebuild:node` |
155+
| Both | `pnpm run rebuild:all` |
141156

142157
If SQLite throws on startup, this is almost always the fix.
143158

144159
### Audit scripts
145160

146161
```bash
147-
npm run audit:dependencies
148-
npm run audit:dead-code
149-
npm run check:circular-deps
150-
npm run audit:engines
162+
pnpm run audit:dependencies
163+
pnpm run audit:dead-code
164+
pnpm run check:circular-deps
165+
pnpm run audit:engines
151166
```
152167

153168
These are useful before large refactors. Not required on every PR, but run them if you touch imports or dependencies.
@@ -174,7 +189,7 @@ The pre-commit hook may stage a version bump in `package.json`. Include that in
174189

175190
### Code style
176191

177-
- TypeScript strict mode `npm run lint` must pass
192+
- TypeScript strict mode - `pnpm run lint` must pass
178193
- Match surrounding patterns: no drive-by refactors in unrelated files
179194
- Logging via `createLogger('ComponentName')` from `src/core/telemetry/Logger.ts`, not raw `console.log`
180195
- New VS Code settings go in `package.json` contributes **and** `src/core/config/schema.ts` **and** `src/core/config/vscodeSettings.ts`
@@ -200,7 +215,7 @@ The pre-commit hook may stage a version bump in `package.json`. Include that in
200215

201216
1. Fork and branch from `main`
202217
2. Make your change; keep the diff focused
203-
3. Run `npm run lint` and `npm test`
218+
3. Run `pnpm run lint` and `pnpm test`
204219
4. Manually smoke-test in the Extension Development Host if you touched agent behavior or UI
205220
5. Open a PR against `main` with:
206221
- What changed and why (2–4 sentences is fine)

0 commit comments

Comments
 (0)