diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json new file mode 100644 index 00000000..c97d3acb --- /dev/null +++ b/.claude-plugin/marketplace.json @@ -0,0 +1,14 @@ +{ + "name": "claude-devtools", + "description": "Audit Claude Code sessions for token waste: per-session findings and a cross-session inventory.", + "owner": { + "name": "axisrow", + "url": "https://github.com/axisrow/claude-devtools" + }, + "plugins": [ + { + "name": "session-audit", + "source": "./" + } + ] +} diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json new file mode 100644 index 00000000..96363d12 --- /dev/null +++ b/.claude-plugin/plugin.json @@ -0,0 +1,7 @@ +{ + "name": "session-audit", + "description": "Audit Claude Code session JSONLs for token waste: per-session ledger with findings (pnpm analyze:session) and a cross-session inventory (pnpm analyze:sessions).", + "author": { + "name": "axisrow" + } +} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fb03825e..c8395d84 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,31 +3,11 @@ name: CI on: push: branches: [main] - paths: - - 'src/**' - - 'test/**' - - 'package.json' - - 'pnpm-lock.yaml' - - 'tsconfig*.json' - - 'vite*.config.*' - - 'vitest*.config.*' - - 'tailwind.config.*' - - 'eslint.config.*' pull_request: branches: [main] - paths: - - 'src/**' - - 'test/**' - - 'package.json' - - 'pnpm-lock.yaml' - - 'tsconfig*.json' - - 'vite*.config.*' - - 'vitest*.config.*' - - 'tailwind.config.*' - - 'eslint.config.*' jobs: - validate: + ci: runs-on: ubuntu-latest steps: @@ -44,7 +24,7 @@ jobs: cache: pnpm - name: Install dependencies - run: pnpm install --no-frozen-lockfile + run: pnpm install --frozen-lockfile - name: Typecheck run: pnpm typecheck @@ -52,31 +32,5 @@ jobs: - name: Lint run: pnpm lint - - name: Build - run: pnpm build - - test: - strategy: - fail-fast: false - matrix: - os: [ubuntu-latest, windows-latest] - runs-on: ${{ matrix.os }} - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Setup pnpm - uses: pnpm/action-setup@v4 - - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: pnpm - - - name: Install dependencies - run: pnpm install --no-frozen-lockfile - - name: Test run: pnpm test diff --git a/CHANGELOG.md b/CHANGELOG.md index 1365ccfa..033e7ff8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) For the full list of merged PRs per release, see [GitHub Releases](https://github.com/matt1398/claude-devtools/releases). +## Fork + +Development continues in this fork — see the [Upstream sync policy](README.md#upstream-sync-policy). Upstream entries below are kept unchanged. + +## [0.1.0-fork.1] — 2026-09-21 + +### Added +- Session-audit CLI: `pnpm analyze:session` (deep per-session ledger, waste findings, slow subagents, cost estimate) and `pnpm analyze:sessions` (session inventory), with a unified ccusage-style flag grammar (#1). +- Session-audit CLI packaged as a Claude Code plugin with marketplace manifest and skills (#12). + +### Fixed +- Treat the `Agent` tool as a subagent spawn (renamed from `Task` in Claude Code 2.1.63). +- Short model ids parsed correctly; removed the `priceFamily` stopgap (#13). + ## [Unreleased] ### Added diff --git a/README.md b/README.md index 3f979ea2..c40c827b 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,6 @@ +> [!NOTE] +> **Actively maintained fork** of [matt1398/claude-devtools](https://github.com/matt1398/claude-devtools) (upstream dormant since 2026-05). This fork carries new development: session-audit CLI and fixes. See the [Upstream sync policy](#upstream-sync-policy). +