githits 0.11.2 → 0.11.4
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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.cursor-plugin/plugin.json +1 -1
- package/.plugin/plugin.json +1 -1
- package/AGENTS.md +15 -2
- package/README.md +3 -2
- package/dist/cli.js +36 -30
- package/dist/index.js +1 -1
- package/dist/shared/{chunk-mjj3pj7r.js → chunk-0w8sxsqp.js} +1 -1
- package/dist/shared/{chunk-kz6tqqfb.js → chunk-sbpx9c2c.js} +71 -47
- package/dist/shared/{chunk-crw6vamv.js → chunk-xez3y33q.js} +1 -1
- package/gemini-extension.json +1 -1
- package/package.json +6 -2
- package/plugin.json +1 -1
- package/server.json +2 -2
- package/skills/githits-code/SKILL.md +5 -4
- package/skills/githits-code/references/code-and-docs.md +1 -1
- package/skills/githits-mcp/SKILL.md +6 -12
- package/skills/githits-onboarding/SKILL.md +3 -4
- package/skills/githits-package/SKILL.md +3 -5
- package/skills/githits-package/references/package.md +1 -0
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "The code context layer for AI coding agents",
|
|
9
|
-
"version": "0.11.
|
|
9
|
+
"version": "0.11.4"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "githits",
|
|
14
|
-
"version": "0.11.
|
|
14
|
+
"version": "0.11.4",
|
|
15
15
|
"description": "The code context layer for AI coding agents",
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "GitHits"
|
package/.plugin/plugin.json
CHANGED
package/AGENTS.md
CHANGED
|
@@ -32,6 +32,18 @@ Philosophy: "Create architecture that is performant and easy to test"
|
|
|
32
32
|
|
|
33
33
|
See `docs/guidelines/ARCHITECTURAL_GUIDELINES.md` for detailed planning checklist and design principles.
|
|
34
34
|
|
|
35
|
+
## Tool output UX
|
|
36
|
+
|
|
37
|
+
Human-readable tool text is an optimized product surface, not raw field
|
|
38
|
+
serialization. Before editing it, inspect real output and preserve existing
|
|
39
|
+
strengths: lead with the outcome, group related evidence, remove repetition and
|
|
40
|
+
scaffolding, and retain stable follow-up locators, actions, and trust facts.
|
|
41
|
+
Wrap free prose to the caller's width, keep formatter-authored punctuation ASCII
|
|
42
|
+
while preserving backend Unicode, and never make color carry meaning. When CLI
|
|
43
|
+
and MCP need the same information, share one formatter per tool with color and
|
|
44
|
+
width as inputs; keep JSON lossless for machines. A complete data dump is not
|
|
45
|
+
good output merely because it is complete.
|
|
46
|
+
|
|
35
47
|
## Testing
|
|
36
48
|
|
|
37
49
|
Philosophy: "If it is not tested, it is likely broken"
|
|
@@ -40,7 +52,7 @@ Philosophy: "If it is not tested, it is likely broken"
|
|
|
40
52
|
|
|
41
53
|
- Use `bun test` for running tests
|
|
42
54
|
- Use `bun run smoke:mcp` and `bun run smoke:cli` when changing MCP tools, CLI commands, shared formatters, auth/error envelopes, or MCP/CLI parity behavior. These are live-capable local suites, not the normal unit suite; they must pass unauthenticated by validating auth handling, and provide deeper coverage when authenticated. After building, also run `bun run smoke:cli:built` and `bun run smoke:mcp:built` when changing smoke launch behavior or CI product validation; these secret-free modes execute `dist/cli.js` under Node.
|
|
43
|
-
- Use `bun run agent:e2e` when changing MCP instructions, tool descriptions, or agent-facing tool behavior. This is a human/agent-driven qualitative eval, not a deterministic CI gate. Pick targeted workloads from `eval/agentic/README.md`; run both Claude and Codex for broad instruction changes when practical. Inspect `tool-calls.json` and `final.json` for actual tool use, `
|
|
55
|
+
- Use `bun run agent:e2e` when changing MCP instructions, tool descriptions, or agent-facing tool behavior. This is a human/agent-driven qualitative eval, not a deterministic CI gate. Pick targeted workloads from `eval/agentic/README.md`; run both Claude and Codex for broad instruction changes when practical. Inspect `tool-calls.json` and `final.json` for actual tool use and the neutral answer/confidence, `metrics.json` for derived token/cost/duration/tool-call metrics, and `isolation-violations.json` for trace-validation failures, not just harness pass/fail. Treat usefulness or quality as reportable only when a later grading stage provides it.
|
|
44
56
|
- Maintain smoke coverage when adding or changing user-facing tools/commands. Prefer structural UX assertions over brittle snapshots, and keep MCP `format: "json"` and CLI `--json` behavior aligned.
|
|
45
57
|
- When changing GraphQL/API selections, add regression tests for over-fetch controls (for example `@include` variables, body omission, field lists, or query builders) and live-smoke the affected CLI/MCP surfaces when authenticated access is available.
|
|
46
58
|
- Keep tests async and isolated
|
|
@@ -114,8 +126,9 @@ See `docs/guidelines/TESTING.md` for comprehensive patterns.
|
|
|
114
126
|
- Root `src/**` is still the published `githits` CLI implementation until the CLI package move completes. It owns Commander commands, local auth storage, browser login, init/setup flows, local stdio MCP startup, plugin/assistant packaging assets, and the diagnostics implementation/lifecycle (environment, process, and output destinations).
|
|
115
127
|
- `packages/core-internal` is private source. It owns transport-neutral service clients, service interfaces, shared request/header primitives, the host-supplied `ServiceDiagnostics` contract, neutral service errors, PKCE helpers, and `TokenProvider`. It must not discover diagnostics environment settings or own diagnostics process/output destinations. Never publish or leak `@githits/core-internal` into public artifacts.
|
|
116
128
|
- `packages/mcp` is the public `@githits/mcp` package. Its public tool/server API is `packages/mcp/src/index.ts`: transport-neutral MCP server creation, tool registration, descriptors, instructions, request-scoped service provider types, and MCP service types. Its public runtime/client API is `packages/mcp/src/client.ts`, exported as `@githits/mcp/client`, for remote MCP servers that need concrete service implementations, token/header/config helpers, and optional injected `ServiceDiagnostics`.
|
|
129
|
+
- The production hosted server at `https://mcp.githits.com` lives in the separate `remote-mcp` repository and consumes the published `@githits/mcp` package as the canonical implementation of tool registration, descriptors, `quick_start`, and tool logic. `remote-mcp` owns HTTP transport, request-scoped service composition, auth/session handling, deployment, and observability; do not duplicate package-owned MCP behavior there. A change in this repository reaches hosted clients only after `@githits/mcp` is released, `remote-mcp` updates that dependency, and the hosted server is deployed.
|
|
117
130
|
- `@githits/mcp/smoke-test` is a public validation helper entrypoint for remote MCP servers. It exports smoke assertions and `runMcpSmoke()` without depending on local CLI startup.
|
|
118
|
-
- `@githits/mcp/internal` is a workspace-only alias for root CLI transition helpers. External packages and the
|
|
131
|
+
- `@githits/mcp/internal` is a workspace-only alias for root CLI transition helpers. External packages and the `remote-mcp` repository must never import it. If remote server work needs something internal, promote the smallest stable API through `@githits/mcp` instead.
|
|
119
132
|
- Public package artifacts for both root `githits` and `@githits/mcp` must not contain `@githits/core-internal`, `workspace:*`, `@githits/mcp/internal`, or private source aliases in JS, declarations, or manifests. The public-package validator also rejects static `fs`, `node:fs`, `fs/promises`, and `node:fs/promises` imports in core source and packed MCP artifacts, and rejects direct core `process.stderr`/`process.stdout` access. These checks cover statically resolved string-literal module edges; they do not claim browser compatibility.
|
|
120
133
|
|
|
121
134
|
## Release Boundaries
|
package/README.md
CHANGED
|
@@ -132,8 +132,9 @@ npx githits@latest docs read <page-id> --lines 20-80
|
|
|
132
132
|
|
|
133
133
|
GitHits 0.10 adds two opt-in local tools for early dogfooding:
|
|
134
134
|
|
|
135
|
-
- `resolve_target` / `githits resolve` turns a fuzzy or ambiguous package
|
|
136
|
-
repository name into
|
|
135
|
+
- `resolve_target` / `githits resolve` turns a fuzzy or ambiguous package,
|
|
136
|
+
repository, or documentation-site name into grouped canonical targets with
|
|
137
|
+
related project identities kept together.
|
|
137
138
|
- `code_diff` / `githits code diff` compares repository trees resolved from
|
|
138
139
|
exact package versions or public GitHub refs.
|
|
139
140
|
|