docbridge 0.8.0 → 0.10.0
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/CHANGELOG.md +85 -1
- package/README.md +55 -369
- package/dist/bin/darwin-arm64/SHA256SUMS +2 -2
- package/dist/bin/darwin-arm64/docbridge-swift-scanner +0 -0
- package/dist/bin/darwin-arm64/docbridge_dart_scanner +0 -0
- package/dist/bin/linux-x64/SHA256SUMS +2 -2
- package/dist/bin/linux-x64/docbridge-swift-scanner +2 -2
- package/dist/bin/linux-x64/docbridge_dart_scanner +0 -0
- package/dist/index.js +2597 -1119
- package/docs/README.md +67 -0
- package/docs/user/automation.md +104 -0
- package/docs/user/commands.md +67 -4
- package/docs/user/configuration.md +5 -4
- package/docs/user/getting-started.md +4 -4
- package/docs/user/linking.md +202 -0
- package/docs/user/troubleshooting.md +50 -18
- package/package.json +1 -8
- package/schemas/docbridge.links.schema.json +39 -0
- package/schemas/scanner-worker.schema.json +1 -0
- package/templates/skills/docbridge/SKILL.md +12 -13
- package/docs/user/agent-integration.md +0 -96
- package/docs/user/annotations.md +0 -173
- package/docs/user/link-review.md +0 -53
- package/docs/user/linking-workflow.md +0 -70
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,88 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.10.0] - 2026-09-28
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- Each release is now published when a pull request labeled
|
|
15
|
+
`release: patch`, `release: minor`, or `release: major` merges, instead of
|
|
16
|
+
from a dedicated release branch. A release still ships the npm package with
|
|
17
|
+
provenance, a `vX.Y.Z` tag, and a GitHub Release built from this changelog.
|
|
18
|
+
The CLI, the scanners, and the editor extension behave as in 0.9.0.
|
|
19
|
+
|
|
20
|
+
## [0.9.0] - 2026-09-23
|
|
21
|
+
|
|
22
|
+
### Added
|
|
23
|
+
|
|
24
|
+
- An optional root file `docbridge.links.json` declares links without any
|
|
25
|
+
annotation in code or Markdown, for projects that do not accept
|
|
26
|
+
tool-specific markers in their source files. One entry declares both
|
|
27
|
+
directions, so DocBridge checks only that both targets exist and reports no
|
|
28
|
+
missing backlink. `check`, `related`, `context`, `graph`, `--audit`, and
|
|
29
|
+
editor navigation treat a declared link like an annotated one, and both
|
|
30
|
+
styles can be used in one project. A `code` target can name a type member in
|
|
31
|
+
all four supported languages. Annotation linking remains the recommended
|
|
32
|
+
style, and a declared link is invisible to a reader of either file, so
|
|
33
|
+
`related --gate` in continuous integration is the remaining safety net.
|
|
34
|
+
- `code_symbol_not_found` reports a manifest `code` target whose file is in
|
|
35
|
+
scope but whose canonical ID does not exist, located at the manifest entry
|
|
36
|
+
and carrying a `Did you mean` suggestion.
|
|
37
|
+
- `docbridge upgrade` reports version drift and reconciles managed agent
|
|
38
|
+
assets. `--check` is a read-only diagnostic covering the installed version,
|
|
39
|
+
the latest stable release, package-manager upgrade guidance, the managed
|
|
40
|
+
`docbridge` skill state, leftover legacy skill directories, symlinks, and
|
|
41
|
+
locally modified files. `--dry-run` prints the full plan, and `--force`
|
|
42
|
+
replaces the managed skill and removes only the five known legacy skill
|
|
43
|
+
directories when they are ordinary directories reached through ordinary
|
|
44
|
+
directories. Every path component below the project root is checked, so a
|
|
45
|
+
symlinked `.agents/skills` or `.claude/skills` can never route a write or a
|
|
46
|
+
removal outside the selected project. Symlinks and regular files carrying a
|
|
47
|
+
legacy name are reported and preserved, replacing the managed skill reproduces
|
|
48
|
+
the packaged template exactly, destructive operations require `--yes` or an
|
|
49
|
+
interactive confirmation, and configuration, hooks, CI recipes, and user files
|
|
50
|
+
are never touched.
|
|
51
|
+
- Human-readable terminal invocations print one stderr notice when a newer
|
|
52
|
+
stable release is published on npm. The lookup uses a bounded timeout and a
|
|
53
|
+
daily per-user cache, fails silently offline, and is suppressed in CI, for
|
|
54
|
+
`--json` output, for `lsp` and `upgrade`, for non-TTY output, and when
|
|
55
|
+
`DOCBRIDGE_NO_UPDATE_CHECK=1` is set. That variable also stops `upgrade` from
|
|
56
|
+
contacting the registry. Command stdout and exit codes are unchanged. Upgrade
|
|
57
|
+
guidance is derived from the project the command acted on (`--root`) and the
|
|
58
|
+
current directory, so a project dependency invoked from elsewhere is not
|
|
59
|
+
mistaken for a global install.
|
|
60
|
+
- A documentation hub, matching Japanese task guides, and the read-only
|
|
61
|
+
`just check-docs` structural gate provide a maintained path through user,
|
|
62
|
+
integration, specification, and contributor documentation.
|
|
63
|
+
|
|
64
|
+
### Changed
|
|
65
|
+
|
|
66
|
+
- `docbridge docs show` no longer accepts the 0.8.0 names `linking-workflow`
|
|
67
|
+
and `link-review`, or the older names `annotations` and `agent-integration`.
|
|
68
|
+
Use `linking` for the first three and `automation` for `agent-integration`.
|
|
69
|
+
Projects with a 0.8.0 `docbridge` skill should refresh it with
|
|
70
|
+
`docbridge upgrade --force` because that skill calls the removed names.
|
|
71
|
+
- Packaged user documentation is consolidated into six task-oriented names:
|
|
72
|
+
`getting-started`, `configuration`, `linking`, `commands`, `automation`, and
|
|
73
|
+
`troubleshooting`.
|
|
74
|
+
- `just vscode-lsp` and `just cursor-lsp` build their VSIX with the same
|
|
75
|
+
implementation release packaging uses, in a local mode that requires only the
|
|
76
|
+
host platform's staged scanner binaries. Release packaging still requires
|
|
77
|
+
every supported platform.
|
|
78
|
+
|
|
79
|
+
### Fixed
|
|
80
|
+
|
|
81
|
+
- The locally installed editor extension shipped a raw `src/` tree without
|
|
82
|
+
`ajv` or `schemas/`, which the bundled server's imports need, so its language
|
|
83
|
+
server could not start. Both installation helpers and release packaging now
|
|
84
|
+
ship the same bundled server. `just verify-vsix` additionally initializes the
|
|
85
|
+
packaged language server outside the checkout, exercises a linked
|
|
86
|
+
TypeScript/Markdown fixture, and rejects an artifact carrying a source tree or
|
|
87
|
+
test files.
|
|
88
|
+
- A type error in the editor client now fails required CI. `just verify` and the
|
|
89
|
+
CI gate run `just typecheck-extension`, which covers the separate TypeScript
|
|
90
|
+
project the root `tsconfig.json` excludes.
|
|
91
|
+
|
|
10
92
|
## [0.8.0] - 2026-08-18
|
|
11
93
|
|
|
12
94
|
### Added
|
|
@@ -351,7 +433,9 @@ Initial release of the SpecLink CLI.
|
|
|
351
433
|
- `speclink check` command with `--root`, `--json`, and `--audit` options.
|
|
352
434
|
- `speclink --version` (alias `-v`) and `speclink --help` (alias `-h`).
|
|
353
435
|
|
|
354
|
-
[Unreleased]: https://github.com/salan70/docbridge/compare/v0.
|
|
436
|
+
[Unreleased]: https://github.com/salan70/docbridge/compare/v0.10.0...HEAD
|
|
437
|
+
[0.10.0]: https://github.com/salan70/docbridge/releases/tag/v0.10.0
|
|
438
|
+
[0.9.0]: https://github.com/salan70/docbridge/releases/tag/v0.9.0
|
|
355
439
|
[0.8.0]: https://github.com/salan70/docbridge/releases/tag/v0.8.0
|
|
356
440
|
[0.7.0]: https://github.com/salan70/docbridge/releases/tag/v0.7.0
|
|
357
441
|
[0.6.1]: https://github.com/salan70/docbridge/releases/tag/v0.6.1
|
package/README.md
CHANGED
|
@@ -4,59 +4,48 @@
|
|
|
4
4
|
[](docs/ja/README.md)
|
|
5
5
|
[](https://deepwiki.com/salan70/docbridge)
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
DocBridge keeps Markdown documentation and the code that implements it linked
|
|
8
|
+
in both directions. It validates `@doc` annotations on supported TypeScript,
|
|
9
|
+
Swift, Dart, and Rust declarations against `@code` annotations on Markdown
|
|
10
|
+
headings, so humans and coding agents can find the right counterpart before a
|
|
11
|
+
change drifts.
|
|
8
12
|
|
|
9
|
-
|
|
10
|
-
and Markdown documentation, enabling LSP-like experiences such as Hover,
|
|
11
|
-
Definition, References, and Diagnostics across implementation and specification
|
|
12
|
-
files.
|
|
13
|
+
## Requirements
|
|
13
14
|
|
|
14
|
-
|
|
15
|
+
- Node.js 22 or later, or Bun 1.1.31 or later
|
|
16
|
+
- A project containing Markdown and supported source files
|
|
15
17
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
+
Prebuilt Swift, Dart, and Rust scanners are included for supported macOS and
|
|
19
|
+
Linux platforms. See [Releases](https://github.com/salan70/docbridge/releases)
|
|
20
|
+
for packaged-platform details.
|
|
18
21
|
|
|
19
|
-
|
|
20
|
-
npx docbridge check
|
|
21
|
-
# or
|
|
22
|
-
bunx docbridge check
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
See the npm badge above or
|
|
26
|
-
[Releases](https://github.com/salan70/docbridge/releases) for the current
|
|
27
|
-
version.
|
|
28
|
-
|
|
29
|
-
The package includes prebuilt Swift, Dart, and Rust scanner
|
|
30
|
-
binaries for `darwin-arm64` and `linux-x64`. TypeScript and Markdown checks run
|
|
31
|
-
without scanner binaries. Configured Swift, Dart, or Rust projects on unsupported
|
|
32
|
-
platforms report `code_scanner_unavailable` and name the supported platform
|
|
33
|
-
keys.
|
|
22
|
+
## Install
|
|
34
23
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
Run first-time setup in the project root:
|
|
24
|
+
Add DocBridge to the project that owns the documentation:
|
|
38
25
|
|
|
39
26
|
```sh
|
|
40
|
-
|
|
27
|
+
npm install --save-dev docbridge
|
|
41
28
|
```
|
|
42
29
|
|
|
43
|
-
|
|
44
|
-
commands. The skill routes adopt, link, review, and sync work:
|
|
30
|
+
With Bun:
|
|
45
31
|
|
|
46
32
|
```sh
|
|
47
|
-
|
|
33
|
+
bun add --dev docbridge
|
|
48
34
|
```
|
|
49
35
|
|
|
50
|
-
|
|
36
|
+
## Run the first check
|
|
37
|
+
|
|
38
|
+
Create a starting configuration interactively:
|
|
51
39
|
|
|
52
40
|
```sh
|
|
53
|
-
|
|
41
|
+
npx docbridge init
|
|
54
42
|
```
|
|
55
43
|
|
|
56
|
-
|
|
44
|
+
Or write the minimal TypeScript configuration yourself:
|
|
57
45
|
|
|
58
46
|
```json
|
|
59
47
|
{
|
|
48
|
+
"$schema": "./node_modules/docbridge/schemas/docbridge.schema.json",
|
|
60
49
|
"include": {
|
|
61
50
|
"code": {
|
|
62
51
|
"typescript": {
|
|
@@ -68,359 +57,56 @@ You can also create `docbridge.config.json` manually:
|
|
|
68
57
|
}
|
|
69
58
|
```
|
|
70
59
|
|
|
71
|
-
|
|
60
|
+
Add a documentation target to a supported declaration:
|
|
72
61
|
|
|
73
62
|
```ts
|
|
74
|
-
/**
|
|
75
|
-
|
|
76
|
-
*/
|
|
77
|
-
export async function login() {
|
|
78
|
-
// ...
|
|
79
|
-
}
|
|
63
|
+
/** @doc docs/auth.md#login-flow */
|
|
64
|
+
export function login(): void {}
|
|
80
65
|
```
|
|
81
66
|
|
|
82
|
-
Add the
|
|
67
|
+
Add the reciprocal code target immediately before the Markdown heading:
|
|
83
68
|
|
|
84
69
|
```md
|
|
85
|
-
<!-- @code src/auth
|
|
86
|
-
|
|
87
|
-
## Login Spec
|
|
88
|
-
|
|
89
|
-
Login flow specification.
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
Check the project:
|
|
93
|
-
|
|
94
|
-
```sh
|
|
95
|
-
bunx docbridge check
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
## Usage
|
|
99
|
-
|
|
100
|
-
Discover a command:
|
|
101
|
-
|
|
102
|
-
```sh
|
|
103
|
-
bunx docbridge --help
|
|
104
|
-
bunx docbridge context --help
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
Every command accepts `--help` (alias `-h`) and prints its usage, when to use
|
|
108
|
-
it, and its options on stdout.
|
|
109
|
-
|
|
110
|
-
Check links:
|
|
111
|
-
|
|
112
|
-
```sh
|
|
113
|
-
bunx docbridge check
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
Check another project root:
|
|
117
|
-
|
|
118
|
-
```sh
|
|
119
|
-
bunx docbridge check --root examples/typescript
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
Emit JSON:
|
|
123
|
-
|
|
124
|
-
```sh
|
|
125
|
-
bunx docbridge check --json
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
Run audit diagnostics:
|
|
129
|
-
|
|
130
|
-
```sh
|
|
131
|
-
bunx docbridge check --audit
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
Audit diagnostics include:
|
|
135
|
-
|
|
136
|
-
- `undocumented_symbol` — in-scope code endpoints with no `@doc`
|
|
137
|
-
- `unlinked_doc_section` — in-scope documentation sections with no `@code`
|
|
138
|
-
|
|
139
|
-
List the linked counterparts of changed files:
|
|
140
|
-
|
|
141
|
-
```sh
|
|
142
|
-
git diff --name-only | bunx docbridge related --stdin
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
`docbridge related` is informational: it reports each counterpart and whether it
|
|
146
|
-
is itself in the change set, and always exits `0` on success. Changed files can
|
|
147
|
-
also be passed as positional arguments. Add `--gate` to report only the
|
|
148
|
-
counterparts that are not themselves in the change set and exit `1` when any
|
|
149
|
-
exist. Both modes support `--root` and `--json`. See
|
|
150
|
-
[docs/specs/cli.md](docs/specs/cli.md) for details.
|
|
70
|
+
<!-- @code src/auth.ts#login -->
|
|
151
71
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
```sh
|
|
155
|
-
git diff --name-only | bunx docbridge context --stdin
|
|
72
|
+
## Login Flow
|
|
156
73
|
```
|
|
157
74
|
|
|
158
|
-
|
|
159
|
-
Markdown sections for doc counterparts, full declarations including JSDoc for
|
|
160
|
-
code counterparts. The default output is Markdown suitable for direct
|
|
161
|
-
injection into an agent prompt; `--json` follows
|
|
162
|
-
[schemas/context-output.schema.json](schemas/context-output.schema.json).
|
|
163
|
-
Extraction is best-effort and the command exits `0` on success even when the
|
|
164
|
-
tree has broken links. See [docs/specs/cli.md](docs/specs/cli.md) for details.
|
|
165
|
-
|
|
166
|
-
Inspect the resolved link graph:
|
|
75
|
+
Then validate the pair:
|
|
167
76
|
|
|
168
77
|
```sh
|
|
169
|
-
|
|
170
|
-
bunx docbridge graph --json --include-content
|
|
171
|
-
```
|
|
172
|
-
|
|
173
|
-
`docbridge graph` prints the resolved endpoint graph, including resolvable
|
|
174
|
-
one-way links. JSON output follows
|
|
175
|
-
[schemas/graph-output.schema.json](schemas/graph-output.schema.json).
|
|
176
|
-
|
|
177
|
-
## Why DocBridge
|
|
178
|
-
|
|
179
|
-
Modern software projects often suffer from a gap between implementation and
|
|
180
|
-
documentation:
|
|
181
|
-
|
|
182
|
-
- Code changes without documentation updates
|
|
183
|
-
- Documentation changes without implementation updates
|
|
184
|
-
- Difficulty finding which specifications relate to a given implementation
|
|
185
|
-
- Difficulty finding which implementation relates to a given specification
|
|
186
|
-
- AI coding agents missing relevant context during code modifications
|
|
187
|
-
|
|
188
|
-
DocBridge makes relationships between code and documentation explicit,
|
|
189
|
-
navigable, and machine-readable.
|
|
190
|
-
|
|
191
|
-
## Concept
|
|
192
|
-
|
|
193
|
-
Traditional documentation tools often focus on one direction:
|
|
194
|
-
|
|
195
|
-
```text
|
|
196
|
-
Code -> Documentation
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
DocBridge focuses on both directions:
|
|
200
|
-
|
|
201
|
-
```text
|
|
202
|
-
Code <-> Documentation
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
DocBridge links supported code declarations to Markdown sections. TypeScript is
|
|
206
|
-
scanned in-process; Swift, Dart, and Rust are scanned through bundled first-party
|
|
207
|
-
worker packages.
|
|
208
|
-
|
|
209
|
-
## Supported Inputs
|
|
210
|
-
|
|
211
|
-
DocBridge recognizes the following elements.
|
|
212
|
-
|
|
213
|
-
Supported code declarations:
|
|
214
|
-
|
|
215
|
-
- TypeScript top-level exported declarations: `function`, `class`,
|
|
216
|
-
`abstract class`, `interface`, `type`, `const`, `enum`, and supported
|
|
217
|
-
`declare` / named default forms
|
|
218
|
-
- TypeScript type members: class methods, properties, accessors, constructors,
|
|
219
|
-
and static members, plus interface and object-type-alias signatures
|
|
220
|
-
- Swift public/open declarations and configured internal declarations:
|
|
221
|
-
top-level and member types, functions, variables, constants, initializers,
|
|
222
|
-
and extension members
|
|
223
|
-
- Dart public declarations: top-level functions/variables, classes, enums,
|
|
224
|
-
mixins, constructors, fields, accessors, methods, and extension members
|
|
225
|
-
- Rust `pub` declarations (and configured non-`pub` with `visibility`):
|
|
226
|
-
modules, structs, enums, free functions, and inherent `impl` methods
|
|
227
|
-
|
|
228
|
-
Supported Markdown elements:
|
|
229
|
-
|
|
230
|
-
- ATX headings
|
|
231
|
-
- HTML comments
|
|
232
|
-
- `@code` annotations attached to the next heading
|
|
233
|
-
|
|
234
|
-
All four languages use the same `@doc` and `@code` model. Code fragments are
|
|
235
|
-
the scanner-produced canonical IDs, so members are type-qualified.
|
|
236
|
-
|
|
237
|
-
TypeScript member IDs carry no parameter signature; overload signatures and a
|
|
238
|
-
getter/setter pair each collapse to one endpoint, and the constructor is
|
|
239
|
-
`<Type>.constructor`. By default `public` and `protected` members are scanned;
|
|
240
|
-
`private` members require `include.code.typescript.visibility`. Members are
|
|
241
|
-
linkable but are never reported by `check --audit`.
|
|
242
|
-
|
|
243
|
-
```ts
|
|
244
|
-
export class AuthService {
|
|
245
|
-
/** @doc docs/auth.md#login-spec */
|
|
246
|
-
login(email: string, password: string): void {}
|
|
247
|
-
}
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
```md
|
|
251
|
-
<!-- @code src/auth/service.ts#AuthService.login -->
|
|
252
|
-
|
|
253
|
-
## Login Spec
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
Swift, Dart, and Rust canonical IDs follow their own conventions:
|
|
257
|
-
|
|
258
|
-
```swift
|
|
259
|
-
/// @doc docs/auth.md#login-spec
|
|
260
|
-
public struct AuthService {
|
|
261
|
-
public func login(email: String, password: String) {}
|
|
262
|
-
}
|
|
263
|
-
```
|
|
264
|
-
|
|
265
|
-
```md
|
|
266
|
-
<!-- @code Sources/AuthService.swift#AuthService.login(email:password:) -->
|
|
267
|
-
|
|
268
|
-
## Login Spec
|
|
269
|
-
```
|
|
270
|
-
|
|
271
|
-
Projects must define scan targets in `docbridge.config.json`. There is no
|
|
272
|
-
implicit default configuration; when the config file is missing, DocBridge
|
|
273
|
-
reports `config_file_invalid` and does not scan project files.
|
|
274
|
-
|
|
275
|
-
Minimal TypeScript configuration:
|
|
276
|
-
|
|
277
|
-
```json
|
|
278
|
-
{
|
|
279
|
-
"include": {
|
|
280
|
-
"code": {
|
|
281
|
-
"typescript": {
|
|
282
|
-
"patterns": ["src/**/*.ts"]
|
|
283
|
-
}
|
|
284
|
-
},
|
|
285
|
-
"docs": ["docs/**/*.md"]
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
```
|
|
289
|
-
|
|
290
|
-
Multilanguage configuration is language-keyed. The old `include.code` array
|
|
291
|
-
shape is intentionally invalid; migrate it to a `typescript` entry:
|
|
292
|
-
|
|
293
|
-
```json
|
|
294
|
-
{
|
|
295
|
-
"include": {
|
|
296
|
-
"code": {
|
|
297
|
-
"typescript": { "patterns": ["src/**/*.ts"] },
|
|
298
|
-
"swift": { "patterns": ["Sources/**/*.swift"] },
|
|
299
|
-
"dart": { "patterns": ["lib/**/*.dart"] }
|
|
300
|
-
},
|
|
301
|
-
"docs": ["docs/**/*.md"]
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
```
|
|
305
|
-
|
|
306
|
-
Swift, Dart, and Rust projects must build their scanner workers in source checkouts
|
|
307
|
-
before checking those languages. Run `just build-swift-scanner` for Swift,
|
|
308
|
-
`just build-dart-scanner` for Dart, and `just build-rust-scanner` for Rust, or
|
|
309
|
-
use the native test recipes below.
|
|
310
|
-
|
|
311
|
-
## AI agent integration
|
|
312
|
-
|
|
313
|
-
DocBridge's link graph is built to be consumed by AI coding agents:
|
|
314
|
-
|
|
315
|
-
- [docs/integrations](docs/integrations) — recipes for Claude Code, Codex,
|
|
316
|
-
and CI: gate triage with `docbridge related --gate`, counterpart content with
|
|
317
|
-
`docbridge context`, and PR reporting.
|
|
318
|
-
- [templates/skills](templates/skills) — the distributable `docbridge` skill
|
|
319
|
-
installed by `docbridge init` and `docbridge init-with-agent`. Facts about
|
|
320
|
-
the binary live in `docbridge docs show`. Existing five-skill installs remain
|
|
321
|
-
until `docbridge init --force`.
|
|
322
|
-
|
|
323
|
-
This repository dogfoods the skills under `.claude/` and `.agents/`, and keeps
|
|
324
|
-
its guardrail in the Git `pre-commit` hook under `.githooks/` rather than in
|
|
325
|
-
any agent's configuration.
|
|
326
|
-
|
|
327
|
-
## Editor support
|
|
328
|
-
|
|
329
|
-
DocBridge ships a language server that exposes the same link graph to editors:
|
|
330
|
-
|
|
331
|
-
```sh
|
|
332
|
-
docbridge lsp
|
|
333
|
-
```
|
|
334
|
-
|
|
335
|
-
`docbridge lsp` speaks LSP over stdio and provides Diagnostics, Hover,
|
|
336
|
-
Definition, and References across linked code and Markdown. It takes no
|
|
337
|
-
options; the project root comes from the editor's `initialize` request.
|
|
338
|
-
`docbridge check` is unchanged.
|
|
339
|
-
|
|
340
|
-
A VS Code-compatible extension lives in [editors/vscode](editors/vscode). It
|
|
341
|
-
packages the language server into a VSIX for VS Code and Cursor. Install
|
|
342
|
-
[`salan70.docbridge`](https://marketplace.visualstudio.com/items?itemName=salan70.docbridge)
|
|
343
|
-
from VS Code Marketplace. Bun must be available to the editor; set
|
|
344
|
-
`docbridge.bunPath` if the GUI cannot find `bun` on `PATH`.
|
|
345
|
-
|
|
346
|
-
Contributors can still stage the supported `dist/bin/darwin-arm64` and
|
|
347
|
-
`dist/bin/linux-x64` scanner artifacts and build a local VSIX:
|
|
348
|
-
|
|
349
|
-
```sh
|
|
350
|
-
just package-vsix
|
|
351
|
-
just verify-vsix
|
|
78
|
+
npx docbridge check
|
|
352
79
|
```
|
|
353
80
|
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
is tracked separately and is not yet implemented. MCP delivery is out of scope
|
|
357
|
-
until a concrete consumer requires a long-lived tool server. Full LSP behavior
|
|
358
|
-
is specified in [docs/specs/lsp.md](docs/specs/lsp.md).
|
|
359
|
-
|
|
360
|
-
## Diagnostics
|
|
361
|
-
|
|
362
|
-
Errors:
|
|
363
|
-
|
|
364
|
-
- `config_file_invalid`
|
|
365
|
-
- `config_unknown_key`
|
|
366
|
-
- `config_invalid_value`
|
|
367
|
-
- `invalid_link_target`
|
|
368
|
-
- `doc_file_not_found`
|
|
369
|
-
- `doc_anchor_not_found`
|
|
370
|
-
- `code_file_not_found`
|
|
371
|
-
- `code_backlink_not_found`
|
|
372
|
-
- `doc_backlink_not_found`
|
|
373
|
-
- `duplicate_doc_anchor`
|
|
374
|
-
- `duplicate_code_symbol`
|
|
375
|
-
- `code_parse_error`
|
|
376
|
-
- `code_scanner_unavailable`
|
|
377
|
-
- `code_scanner_failed`
|
|
378
|
-
- `file_read_error`
|
|
379
|
-
|
|
380
|
-
Warnings:
|
|
81
|
+
A valid graph exits `0`. Invalid configuration, unresolved targets, and missing
|
|
82
|
+
backlinks produce diagnostics and exit `1`.
|
|
381
83
|
|
|
382
|
-
|
|
383
|
-
- `dangling_code_annotation`
|
|
384
|
-
- `unsupported_declaration`
|
|
385
|
-
- `undocumented_symbol` when `--audit` is enabled
|
|
386
|
-
- `unlinked_doc_section` when `--audit` is enabled
|
|
84
|
+
## Choose the next guide
|
|
387
85
|
|
|
388
|
-
|
|
86
|
+
- [Documentation hub](docs/README.md) — user guides, integration recipes,
|
|
87
|
+
specifications, and contributor references
|
|
88
|
+
- [Getting started](docs/user/getting-started.md) — installation and project
|
|
89
|
+
setup
|
|
90
|
+
- [Configuration](docs/user/configuration.md) — roots, include patterns,
|
|
91
|
+
languages, and visibility
|
|
92
|
+
- [Linking](docs/user/linking.md) — choose, create, and semantically review
|
|
93
|
+
links
|
|
94
|
+
- [Commands](docs/user/commands.md) — check, related, context, graph, docs, and
|
|
95
|
+
upgrade
|
|
96
|
+
- [Automation](docs/user/automation.md) — coding agents, Git hooks, and CI
|
|
97
|
+
- [Troubleshooting](docs/user/troubleshooting.md) — diagnose configuration,
|
|
98
|
+
scanning, and link failures
|
|
99
|
+
- [日本語ドキュメント](docs/ja/README.md)
|
|
389
100
|
|
|
390
|
-
|
|
391
|
-
|
|
101
|
+
The CLI ships the English task guides with its own version. Run
|
|
102
|
+
`npx docbridge docs list` and `npx docbridge docs show <name>` to read them
|
|
103
|
+
without a repository checkout.
|
|
392
104
|
|
|
393
105
|
## Contributing
|
|
394
106
|
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
## Documentation
|
|
399
|
-
|
|
400
|
-
- Contributor guide: [CONTRIBUTING.md](CONTRIBUTING.md)
|
|
401
|
-
- Japanese documentation: [docs/ja/README.md](docs/ja/README.md)
|
|
402
|
-
- Specifications: [docs/specs](docs/specs)
|
|
403
|
-
- v0.1 decisions: [docs/decisions/v0.1.md](docs/decisions/v0.1.md)
|
|
404
|
-
- v0.2 decisions: [docs/decisions/v0.2.md](docs/decisions/v0.2.md)
|
|
405
|
-
- v0.3 decisions: [docs/decisions/v0.3.md](docs/decisions/v0.3.md)
|
|
406
|
-
- AI agent integration recipes: [docs/integrations](docs/integrations)
|
|
407
|
-
- Commit message convention: [docs/contributing/commits.md](docs/contributing/commits.md)
|
|
408
|
-
- Pull request convention: [docs/contributing/pull-requests.md](docs/contributing/pull-requests.md)
|
|
409
|
-
- Testing convention: [docs/contributing/testing.md](docs/contributing/testing.md)
|
|
410
|
-
|
|
411
|
-
## Roadmap
|
|
412
|
-
|
|
413
|
-
Completed v0.1–v0.6 capabilities are documented above and in
|
|
414
|
-
[CHANGELOG.md](CHANGELOG.md).
|
|
415
|
-
|
|
416
|
-
Remaining editor delivery work:
|
|
417
|
-
|
|
418
|
-
- Follow-up automation for GitHub Release VSIX attachment and registry
|
|
419
|
-
publishing after the manual flow is proven
|
|
420
|
-
- Add a separate Zed integration path
|
|
421
|
-
|
|
422
|
-
## Vision
|
|
423
|
-
|
|
424
|
-
DocBridge is not a documentation generator.
|
|
107
|
+
Repository setup, tests, and pull-request policy are in
|
|
108
|
+
[CONTRIBUTING.md](CONTRIBUTING.md). Documentation ownership and writing rules
|
|
109
|
+
are in [Documentation Guidelines](docs/contributing/documentation.md).
|
|
425
110
|
|
|
426
|
-
|
|
111
|
+
DocBridge is not a documentation generator. It makes the relationship between
|
|
112
|
+
maintained prose and implementation explicit, navigable, and machine-readable.
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
a9e4da05e5398bf7f15c3d5d096adf3f2a7701d5c740489b9c0c03b72ad09ac5 docbridge-swift-scanner
|
|
2
|
+
7948e74e4425d175793873e894506df3cd9977b865ed864984dd9374f0db8546 docbridge_dart_scanner
|
|
3
3
|
a1b129d980c981a2d24f0c9682e614a9695d4e9f9b8174d61b0dacb3fc9e3c79 docbridge-rust-scanner
|
|
Binary file
|
|
Binary file
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
da146903eef836e6c25ae750c95d6f8768e13742d6fe4ac9ba6669aacf825a11 docbridge-swift-scanner
|
|
2
|
+
1784df5ebc370c785a3728e2d8cccb8da27593265ed6a1cac27019787c9ea666 docbridge_dart_scanner
|
|
3
3
|
d89a1146ed10dcb01151ef5351a746862c3955286431c47f3cf91cf6639866ba docbridge-rust-scanner
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
[diffend] Oversized file quarantined before diffing.
|
|
2
2
|
name: package/dist/bin/linux-x64/docbridge-swift-scanner
|
|
3
|
-
size:
|
|
4
|
-
sha256:
|
|
3
|
+
size: 38124248 bytes
|
|
4
|
+
sha256: da146903eef836e6c25ae750c95d6f8768e13742d6fe4ac9ba6669aacf825a11
|
|
Binary file
|