@mnstry/atelier 0.2.0-alpha.3 → 0.2.0-alpha.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/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.0-alpha.4
4
+
5
+ Presentation release. No contract changes and no runtime behaviour changes:
6
+ documents valid against `0.2.0-alpha.0` remain valid.
7
+
8
+ - **The README now explains the system before the package.** It begins with
9
+ the repository as a durable substrate, then shows how ontology, enforcement,
10
+ governed projections, and a local runtime make the same work usable by
11
+ people, teams, agents, and tools.
12
+ - **The story progresses with the reader.** Stewards and collaborators get the
13
+ purpose and working loop first; builders get the graph and library surfaces;
14
+ technical readers retain the exact, test-gated claims, limitations, and
15
+ conformance boundaries.
16
+ - **Methodology authoring is presented as the proving ground, not the
17
+ category.** The package can support any file-based body of work whose
18
+ structure, relationships, disclosure, and readiness must remain portable and
19
+ enforceable.
20
+ - **Package and installation metadata match the new public presentation.** The
21
+ prerelease remains explicitly pinned, and the coordinated MNSTRY developer
22
+ documentation carries the same conceptual spine.
23
+ - **Bundled client instructions match the released CLI.** The Codex and Claude
24
+ open-Atelier skills use `atelier dev` and point registry users to the scoped,
25
+ collision-free install path.
26
+
3
27
  ## 0.2.0-alpha.3
4
28
 
5
29
  Documentation and metadata release. No contract changes and no runtime
package/README.md CHANGED
@@ -1,77 +1,111 @@
1
1
  # MNSTRY Atelier
2
2
 
3
- **The Atelier makes a repository mean something.** It is a local governance
4
- toolkit for file-based bodies of work — a Node CLI and library with no
5
- service, no account, and no telemetry. Git is the database. The ontology is
6
- the schema. The validators are the constraints. The runtime is local.
7
-
8
- An ordinary file gains a small structured header: what this is, who it is
9
- for, what it relates to. That is the entire enrollment. From those
10
- declarations the Atelier builds a knowledge graph over your work, generates
11
- a review page you read in a browser on loopback, checks the work against
12
- published readiness protocols, and rejects what must never happen a
13
- public export that quietly references a private source.
14
-
15
- MNSTRY publishes it under Apache-2.0 and authors its own workspaces with
16
- it. Everything here runs without ever talking to a MNSTRY runtime, so it
17
- can govern a methodology, a research corpus, an editorial pipeline, or any
18
- body of work that must outlive the tools that touch it. Every promise on
19
- this page ends in a command you can run.
3
+ **Turn a repository into a living, governed system.**
4
+
5
+ Important bodies of work often begin as files: methods, research, programs,
6
+ policies, editorial systems, product knowledge, or something no existing app
7
+ quite understands. A folder can hold that work, but it cannot explain what each
8
+ file is, how the pieces relate, who may see them, or whether the whole is ready
9
+ to use.
10
+
11
+ The Atelier adds that missing layer without taking the work away from you. It
12
+ turns a repository into an ontology-governed knowledge graph, gives rules the
13
+ power to refuse invalid states, and produces bounded views for people, teams,
14
+ agents, and tools. Git remains the source of record. Your files remain readable.
15
+ The runtime remains local.
16
+
17
+ That makes the same repository useful at several levels:
18
+
19
+ - A **steward** can shape a coherent system without surrendering it to a
20
+ proprietary database.
21
+ - A **team** can collaborate through explicit roles, handoffs, and disclosure
22
+ boundaries.
23
+ - A **person or agent** can receive the right context and capabilities for the
24
+ task, without receiving the entire repository.
25
+ - A **toolmaker** can build a specialized or commercial product on the graph,
26
+ contracts, validators, and projections instead of inventing a new source of
27
+ truth.
28
+
29
+ MNSTRY built the Atelier for a demanding case: a living body of methodology
30
+ that must stay legible, internally connected, privacy-aware, and usable across
31
+ many interfaces. Methodology authoring is one application of the system, not
32
+ its definition or ceiling.
33
+
34
+ ## From files to a working system
35
+
36
+ ```text
37
+ files you own
38
+ ↓ declare identity, type, audience, and relationships
39
+ ontology-governed graph
40
+ ↓ apply contracts, policies, and readiness rules
41
+ governed projections
42
+ ├── local review
43
+ ├── bounded agent context
44
+ ├── collaboration and disclosure
45
+ └── specialized tools and commercial distributions
46
+ ```
47
+
48
+ You can see the complete loop in a disposable sample workspace:
20
49
 
21
50
  ```bash
22
- npm install --save-dev @mnstry/atelier@0.2.0-alpha.3
51
+ npm install --save-dev @mnstry/atelier@0.2.0-alpha.4
23
52
  npx mnstry-atelier init --fixture=sample-workspace --target ./sample
24
53
  npx mnstry-atelier graph --project ./sample/atelier.project.json
54
+ npx mnstry-atelier project --project ./sample/atelier.project.json
55
+ npx mnstry-atelier dev --project ./sample/atelier.project.json
25
56
  ```
26
57
 
27
- `npx` here runs the binary already installed in `./node_modules/.bin`
28
- always install first. Keep the `@mnstry/` scope: the unscoped npm name
29
- `atelier` belongs to an unrelated third-party package, so a bare
30
- `npx atelier` outside an installed workspace runs someone else's code.
31
- The branded `npx mnstry-atelier` form never collides with it; inside an
32
- installed workspace the shorter `atelier` command is also available, and
33
- that is the form npm scripts and the command reference below use.
58
+ Open the loopback URL printed by `dev`. The browser page is generated from
59
+ the same graph and rules that the CLI and library expose.
60
+
61
+ `npx` here runs the binary installed in `./node_modules/.bin`, so install the
62
+ scoped package first. Keep the `@mnstry/` scope: the unscoped npm package
63
+ `atelier` is unrelated. The branded `npx mnstry-atelier` command avoids that
64
+ collision; inside an installed workspace, the shorter `atelier` command is
65
+ also available.
34
66
 
35
67
  ## What authoring looks like
36
68
 
37
- Here is a complete, working source document fictional, like every
38
- fixture in this package:
69
+ Enrollment is deliberately small. A source file declares its identity, type,
70
+ audience, and relationships in front matter:
39
71
 
40
72
  ```markdown
41
73
  ---
42
- title: "Grounding practice"
43
- summary: "The opening practice every offer in this catalog builds on."
74
+ title: Breath practice
75
+ summary: A simple preparation practice.
76
+ tags: []
44
77
  kg:
45
- id: "my-studio:grounding-practice"
46
- type: "document"
47
- status: "active"
48
- audience: "team"
78
+ id: example:breath-practice
79
+ type: document
80
+ status: active
81
+ audience: public
49
82
  relations:
50
- supports: "my-studio:flagship-offer"
83
+ belongs_to: example:flagship-program
51
84
  ---
52
85
 
53
- # Grounding practice
86
+ # Breath practice
54
87
 
55
- The practice itself, in your words, in your file, in your repository.
88
+ Let the exhale become slightly longer than the inhale.
56
89
  ```
57
90
 
58
- That header is the entire enrollment. The graph builder reads front matter
59
- like this, and `.kg.json` sidecars for files that are not Markdown — JSON,
60
- YAML, CSV, media, anything without ever parsing the foreign format. Your
61
- documents stay in your repositories, in formats you chose, readable
62
- without this tool. From there the working loop is four commands:
91
+ The file is still Markdown. Git still records its history. The declarations
92
+ let the Atelier resolve one canonical identity, validate its declared shape,
93
+ connect it to neighboring work, and decide where it may
94
+ travel.
63
95
 
64
- ```bash
65
- npx mnstry-atelier graph --project ./sample/atelier.project.json # build the knowledge graph
66
- npx mnstry-atelier project --project ./sample/atelier.project.json # generate the local review page
67
- npx mnstry-atelier readiness --project ./sample/atelier.project.json # check against published protocols
68
- npx mnstry-atelier dry-run ./atelier-export.json # validate against the public contracts
69
- ```
96
+ When a source format cannot carry front matter, a sidecar can provide the same
97
+ declarations. The graph does not require every source to become Markdown.
98
+
99
+ From there, one source can inform a human-readable review page, a session-bound
100
+ context envelope for an agent, or structured input to another tool. These are
101
+ interfaces to the same governed repository, not copies that quietly drift apart.
70
102
 
71
- After those four commands you have a generated graph, a browsable review
72
- page under your project's output directory, a readiness summary, and a
73
- dry-run report all of them files in your repository, all of them
74
- diffable. `npx mnstry-atelier dev` serves the review page on loopback.
103
+ ## Rules travel with the work
104
+
105
+ The ontology is not only a vocabulary. It is an enforcement surface. Contracts
106
+ define valid shapes, policies govern movement and disclosure, readiness rules
107
+ make completion testable, and validators fail closed when a boundary cannot be
108
+ proven.
75
109
 
76
110
  <!-- atelier:block:audience-visibility:start -->
77
111
  The `audience` field in the header is the load-bearing word. It declares who
@@ -85,20 +119,114 @@ public is refused. That check is fixture-pinned and mutation-tested —
85
119
  deleting its enforcement fails tests, not documentation.
86
120
  <!-- atelier:block:audience-visibility:end -->
87
121
 
88
- The same machinery is a library:
122
+ That distinction matters whenever several interfaces share one body of work.
123
+ A public site, an internal review tool, and an agent session can all use the
124
+ same graph while receiving different, mechanically checked projections.
89
125
 
90
- ```js
91
- import { validateAtelierExportDryRun } from '@mnstry/atelier'
126
+ ## The system beneath it
127
+
128
+ ### 1. The repository becomes an ontology
129
+
130
+ The project manifest tells the Atelier where sources live and which boundaries
131
+ govern the workspace. Source declarations establish typed nodes and relationships. The
132
+ graph command resolves those declarations into a deterministic index that can
133
+ be queried, validated, rendered, and extended.
134
+
135
+ This is what makes a collection of files behave like a system while remaining
136
+ portable. The repository contains both the knowledge and the terms needed to
137
+ interpret it.
138
+
139
+ ### 2. Rules can refuse
140
+
141
+ A useful rule must do more than advise. The Atelier checks schema validity,
142
+ relationship integrity, audience boundaries, readiness protocols, and export
143
+ contracts. Invalid or ambiguous states produce a failing command instead of a
144
+ best-effort publication.
145
+
146
+ Because the checks are local and versioned with the work, the repository can
147
+ prove its state in CI, on a laptop, or inside a larger toolchain.
148
+
149
+ ### 3. Collaboration becomes governed disclosure
150
+
151
+ Collaboration is not equivalent to giving every participant every file. The
152
+ Atelier models audience, runtime visibility, roles, and capability envelopes
153
+ as separate concerns. A projection can therefore disclose the material needed
154
+ for a task while withholding material outside that boundary.
155
+
156
+ This creates a shared language for human handoffs, agent sessions, reviews,
157
+ and eventual managed delivery. The open package validates the declared
158
+ boundary; it does not silently make access decisions on your behalf.
159
+
160
+ ### 4. The local runtime serves people and agents
161
+
162
+ `atelier dev` exposes a loopback-only review surface backed by the compiled
163
+ graph. The library exposes the same project, graph, validation, and projection
164
+ primitives to code.
165
+
166
+ The shipped agent model is intentionally bounded: the Atelier can assemble
167
+ session context, capability envelopes, and proposed changes, but it does not
168
+ apply those proposals or grant direct write access. It is a local context and
169
+ control layer that another interface can build on, not an autonomous editor.
170
+
171
+ ### 5. The repository can power another product
92
172
 
93
- const report = validateAtelierExportDryRun(exportDocument)
94
- console.log(report.accepted, report.importable, report.errors)
173
+ The CLI is one interface. The package is also a library, and its contracts are
174
+ published artifacts. A tool can use the repository as its durable source of
175
+ truth, compile the graph, select an audience-safe projection, and present a
176
+ purpose-built experience without reimplementing the governance model.
177
+
178
+ That tool may be private, open source, or commercial. Apache-2.0 permits all
179
+ three. Conformance to the public Atelier contracts does not require a MNSTRY
180
+ account or service.
181
+
182
+ Read [the design document](./docs/design.md) for the five-part architecture and
183
+ [the ontology](./docs/ontology.md) and
184
+ [contract-stability policy](./docs/contract-stability.md) for the stable
185
+ boundaries.
186
+
187
+ ## Build your own tool on it
188
+
189
+ Use the CLI when a shell command or CI gate is enough. Use the library when the
190
+ Atelier is the substrate beneath a custom interface:
191
+
192
+ ```js
193
+ import {
194
+ buildGraph,
195
+ resolveProjectConfig,
196
+ } from '@mnstry/atelier'
197
+
198
+ const project = resolveProjectConfig({
199
+ cwd: process.cwd(),
200
+ argv: ['--project=./atelier.project.json'],
201
+ })
202
+ const graph = buildGraph(project)
203
+
204
+ if (graph.errors.length > 0) throw new Error(graph.errors.join('\n'))
205
+ console.log(graph.nodes)
95
206
  ```
96
207
 
97
- Real projects start from the `private-domain`, `shared-project`, or
98
- `distribution` templates instead of the sample fixture
99
- [`docs/install.md`](docs/install.md) is the full install guide.
208
+ The package exports change over the alpha series, so pin the exact prerelease
209
+ version and treat the package export map and shipped source modules as the
210
+ executable API reference. [Distribution contracts](./docs/distributions.md) explain
211
+ how a governed subset can be packaged for another surface without widening its
212
+ audience.
213
+
214
+ ## Where the Atelier stops
215
+
216
+ The open package owns repository-side structure and proof. A managed runtime
217
+ may consume a conformant export, but that is a separate system with a separate
218
+ trust boundary.
100
219
 
101
- ## Claims you can check
220
+ | The local Atelier does | A managed runtime may do |
221
+ | --- | --- |
222
+ | Parse sources and sidecars | Authenticate participants |
223
+ | Compile and query the graph | Resolve live authorization |
224
+ | Validate contracts and relationships | Persist runtime state |
225
+ | Enforce export audience boundaries | Deliver governed experiences |
226
+ | Generate local review and agent context | Record consent and operational events |
227
+ | Check offline conformance | Decide optional admission |
228
+
229
+ ### Claims you can verify
102
230
 
103
231
  <!-- atelier:block:claims:start -->
104
232
  This package makes three promises. None of them asks for your trust — each
@@ -148,7 +276,7 @@ claims, including the perpetual Apache-2.0 grant on every tagged release you
148
276
  receive.
149
277
  <!-- atelier:block:claims:end -->
150
278
 
151
- ## What it will not do
279
+ ### What it will not do
152
280
 
153
281
  <!-- atelier:block:will-not-do:start -->
154
282
  - It does not write to a MNSTRY runtime database.
@@ -162,7 +290,7 @@ These limits are the design. An authoring tool for private material earns
162
290
  trust by what it refuses to be able to do.
163
291
  <!-- atelier:block:will-not-do:end -->
164
292
 
165
- ## Conformance is public, admission is separate
293
+ ### Conformance and admission
166
294
 
167
295
  <!-- atelier:block:conformance-admission:start -->
168
296
  The Atelier export format is MNSTRY's format, offered openly.
@@ -182,167 +310,63 @@ is part of the contract. You can build on the Atelier without ever talking
182
310
  to MNSTRY, and a document MNSTRY declines can still be fully conformant.
183
311
  <!-- atelier:block:conformance-admission:end -->
184
312
 
185
- ## Where the Atelier stops
186
-
187
- The Atelier is a complete, standalone tool; nothing on the right side of
188
- this table is required to use it. MNSTRY's managed platform begins where
189
- local preparation ends:
190
-
191
- | The Atelier, today | The MNSTRY managed platform |
192
- | ------------------------------------- | ---------------------------------- |
193
- | Local files and Git authority | Runtime authority |
194
- | Knowledge graph and review projection | Governed delivery |
195
- | Readiness checks and proposed claims | Runtime consent and identity |
196
- | Offline conformance | Signed admission |
197
- | Proposal-only harness access | Tenant applications and operations |
198
-
199
- ## The system
200
-
201
- The full design lives in [`docs/design.md`](docs/design.md) — five
202
- movements, each grounded in shipped machinery, each ending with the command
203
- that proves it. In brief:
204
-
205
- **A repository with an ontology.** Front matter — or a `.kg.json` sidecar
206
- beside any format the kit never parses — declares a file's identity, type,
207
- audience, and relations. A node's `kg.id` names its canonical: the stable
208
- source-of-truth version of a thing that people, tools, and agents can refer
209
- to without losing meaning. The graph builder compiles the repository into a
210
- deterministic knowledge graph. No import step, no database: the repository
211
- is the store, and Git is the history, the review process, and the read
212
- boundary.
213
-
214
- **Rules that refuse.** JSON Schema contracts under a compatibility epoch
215
- define the vocabulary, and fail-closed validators enforce it — including
216
- the audience/visibility refusal above. Schema widening outside `ext`
217
- containers is refused by a schema-vs-schema differ, breaking changes
218
- require a new contract version with a recorded migration, and twelve
219
- claim-first readiness protocols check a workspace against published
220
- criteria to produce proposed claims, never runtime mutations.
221
-
222
- **Collaboration as governed disclosure.** Repositories have enforced roles:
223
- private-domain repos hold one person's source material, shared-project
224
- repos hold what a team may read, and the boundary guard fails closed when
225
- material crosses without a record. Crossing the boundary requires a
226
- recorded `git.promote` disclosure event — disclosure is a commit, not an
227
- accident. Change to the machinery itself is governed the same way: the
228
- lockfile records exactly what a workspace runs, and upgrades are
229
- branch-based, review-first, and refuse dirty repositories.
230
-
231
- **A local runtime for humans and for agents.** `atelier project` renders a
232
- projection — a contextual view of the same governed workspace. Humans get a
233
- generated review page over a loopback-only sidecar; agent harnesses get
234
- session-bound context and capability envelopes, with a place to record
235
- proposals and no apply endpoints. That is a narrow, testable control — a
236
- bounded view, and no write authority to grant — not a general claim that an
237
- agent is safe around private material. Neutral Claude and Codex skill
238
- wrappers ship in the package.
239
-
240
- **A platform for your own tool.** A distribution wraps the CLI under its
241
- own name, contributes a validated extension pack, and themes the
242
- projection, while the root contracts, guards, and conformance stay
243
- canonical underneath.
244
-
245
- It exists because some bodies of work are too important to live inside
246
- someone else's platform. MNSTRY built the Atelier to carry its own most
247
- demanding case — private transformational work, where a leaked document is
248
- a betrayal — and that case shaped the defaults: fail-closed boundaries, no
249
- telemetry, no send path, agents without authority, disclosure as a recorded
250
- event. Other domains reuse the mechanics and define their own ontology,
251
- protocols, and boundary policies. Methodology authoring is the first
252
- application, not the ceiling.
253
-
254
- ## Build your own tool on it
313
+ ## Install and go deeper
255
314
 
256
- The Atelier is designed to be built on, under your name — including
257
- commercially. A distribution wraps the CLI under its own command,
258
- contributes a validated extension pack (branded protocols, terms,
259
- templates), and themes the projection, while the root contracts, guards,
260
- and conformance stay canonical underneath. Apache-2.0 makes commercial use
261
- a right, not a favor; the trademark policy keeps the name ours and the
262
- code yours. Start by copying the worked example:
263
-
264
- - `examples/loomworks-studio` — a complete fictional distribution: branded
265
- bin, extension pack, themed workspace template. It lives in this
266
- repository and deliberately never ships in the npm tarball.
267
- - [`docs/distributions.md`](docs/distributions.md) — the contract a
268
- distribution must honor.
269
- - `TRADEMARKS.md` — naming rules; Apache-2.0 grants code rights, not brand
270
- rights. Every distribution carries "powered by MNSTRY Atelier"
271
- attribution, checked by `atelier distribution check`.
272
-
273
- ## Status
274
-
275
- - Version: `0.2.0-alpha.3`
276
- - Stability: alpha — contracts are under a compatibility gate from the
277
- `v0.2.0-alpha.0` epoch tag onward; everything else may still move
278
- - Runtime: Node.js `>=22.18.0 <23`
279
- - Dependencies: ajv, ajv-formats (JSON Schema validation); nothing else at
280
- runtime
281
- - Distribution: `@mnstry/atelier@0.2.0-alpha.3` on npm, published from the
282
- `v0.2.0-alpha.3` tag. The `v0.2.0-alpha.0` tag is the contract epoch
283
- marker, not an install target — it predates the current tree. The version
284
- `0.2.0` was published in error and unpublished the same day; that number
285
- is permanently retired on npm and will never be reused.
286
- - Telemetry: none. Network egress: none, with one documented exception —
287
- see "Claims you can check" above.
288
-
289
- ## Command reference
290
-
291
- Commands below use the `atelier` form, which is what an installed
292
- workspace sees; from outside a workspace, invoke the same commands as
293
- `npx mnstry-atelier`.
315
+ Node.js `>=22.18.0 <23` is required. Pin the prerelease while the package
316
+ remains in alpha:
294
317
 
295
318
  ```bash
296
- atelier dry-run ./atelier-export.json
297
- atelier contract check
298
- atelier graph --project ./atelier.project.json
299
- atelier project --project ./atelier.project.json
300
- atelier readiness --project ./atelier.project.json
301
- atelier readiness protocols
302
- atelier readiness journey --project ./atelier.project.json
303
- atelier readiness run mnstry.readiness:identity-map --project ./atelier.project.json
304
- atelier readiness packet --project ./atelier.project.json
305
- atelier readiness export --dry-run --project ./atelier.project.json
306
- atelier boundary check --project ./atelier.project.json
307
- atelier boundary check --staged --project ./atelier.project.json
308
- atelier boundary install-hooks --project ./atelier.project.json
309
- atelier promote --source-repo tenant-private-domain --target-repo project-alpha --kg-id tenant-private-domain:seed
310
- atelier lock write --project ./atelier.project.json
311
- atelier lock check --project ./atelier.project.json
312
- atelier upgrade --dry-run --project ./atelier.project.json
313
- atelier upgrade --apply --project ./atelier.project.json --branch codex/atelier-upgrade-YYYYMMDD
314
- atelier extension-pack validate --project ./atelier.project.json
315
- atelier attestation verify ./attestation.json
316
- atelier feedback create --message "what happened"
317
- atelier announcements list
318
- atelier distribution check --target ./my-distribution
319
- atelier dev --project ./atelier.project.json
319
+ npm install --save-dev @mnstry/atelier@0.2.0-alpha.4
320
+ ```
321
+
322
+ Then choose the path that matches what you are building:
323
+
324
+ - [Installation and first run](./docs/install.md)
325
+ - [Design and architecture](./docs/design.md)
326
+ - [Knowledge graph and source model](./docs/knowledge-graph.md)
327
+ - [Local runtime and agent boundary](./docs/atelier-runtime.md)
328
+ - [Distribution contracts](./docs/distributions.md)
329
+ - [Conformance and attestation](./docs/attestation.md)
330
+ - [Continuity commitments](./docs/continuity.md)
331
+ - [Upgrade notes](./docs/upgrade.md)
332
+
333
+ ## Status and command reference
334
+
335
+ Current package: `@mnstry/atelier@0.2.0-alpha.4`.
336
+
337
+ The alpha package is usable and contract-tested, but its library API may still
338
+ change before a stable release. Pin the exact version in production toolchains.
339
+
340
+ ```text
341
+ atelier init
342
+ atelier adopt
343
+ atelier setup
344
+ atelier graph
345
+ atelier project
346
+ atelier build
347
+ atelier dev
348
+ atelier generated check
349
+ atelier config check
350
+ atelier extension-pack
351
+ atelier distribution check
352
+ atelier egress check
353
+ atelier boundary
354
+ atelier readiness
355
+ atelier export
356
+ atelier context flow
357
+ atelier support bundle
358
+ atelier feedback
359
+ atelier announcements
360
+ atelier attestation
361
+ atelier promote
362
+ atelier upgrade
363
+ atelier lock
320
364
  ```
321
365
 
322
- `upgrade --apply` creates or switches to the requested branch, refuses dirty
323
- authored repos, preserves unrelated user hooks through composed hook files,
324
- runs only registered migrations, refreshes generated projections, and leaves
325
- a Git commit for review. It will not weaken boundary policy, introduce
326
- telemetry, enable non-loopback egress, run model-assisted analysis, or
327
- write, import, or apply runtime state.
328
-
329
- `feedback create` writes a scanned, redaction-checked report to a local
330
- file — there is no send path; you choose whether and where to share it.
331
- `announcements list` verifies project-shipped announcements against a
332
- committed public key — pull-only, nothing phones home to ask
333
- ([`docs/announcements.md`](docs/announcements.md)).
334
-
335
- ## License and contributing
336
-
337
- Apache-2.0. See `LICENSE`, `NOTICE` (attribution obligations that survive
338
- forks), `TRADEMARKS.md` (naming), and `docs/continuity.md` (distribution
339
- continuity commitments).
340
-
341
- Issues and questions are welcome. Outside pull requests are not open yet —
342
- a required CI check currently asserts maintainer commit identity — and
343
- `CONTRIBUTING.md` states that posture plainly, along with the
344
- inbound-equals-outbound Apache-2.0 terms and DCO sign-off that will govern
345
- contributions when they open. One expectation worth knowing before you run
346
- the suite: `npm test` from a fresh clone fails exactly one check by
347
- design — a release-lane protection whose private file is absent — and
348
- `CONTRIBUTING.md` explains the acknowledged-skip form.
366
+ Run `atelier --help` or `atelier <command> --help` for the current flags. The
367
+ full command behavior is also covered by the package's executable tests.
368
+
369
+ ## Contributing and license
370
+
371
+ Contributions are welcome through [the contribution guide](./CONTRIBUTING.md).
372
+ MNSTRY Atelier is released under [Apache-2.0](./LICENSE).
package/docs/install.md CHANGED
@@ -30,19 +30,19 @@ The registry is the distribution channel of record, as `docs/continuity.md`
30
30
  commits:
31
31
 
32
32
  ```bash
33
- npm install --save-dev @mnstry/atelier@0.2.0-alpha.3
33
+ npm install --save-dev @mnstry/atelier@0.2.0-alpha.4
34
34
  ```
35
35
 
36
36
  Installing from the matching Git tag resolves to the same reviewed commit:
37
37
 
38
38
  ```bash
39
- npm install --save-dev "git+https://github.com/MNSTRY/atelier.git#v0.2.0-alpha.3"
39
+ npm install --save-dev "git+https://github.com/MNSTRY/atelier.git#v0.2.0-alpha.4"
40
40
  ```
41
41
 
42
42
  Or over SSH:
43
43
 
44
44
  ```bash
45
- npm install --save-dev "git+ssh://git@github.com/MNSTRY/atelier.git#v0.2.0-alpha.3"
45
+ npm install --save-dev "git+ssh://git@github.com/MNSTRY/atelier.git#v0.2.0-alpha.4"
46
46
  ```
47
47
 
48
48
  Keep the `@mnstry/` scope — see the command-form note above for why the
package/docs/upgrade.md CHANGED
@@ -5,6 +5,15 @@ workspace between Atelier package releases. The flow is local-only: it does not
5
5
  provision repositories, contact a Git host, mutate the MNSTRY runtime, or write
6
6
  through a browser view.
7
7
 
8
+ ## Upgrading to 0.2.0-alpha.4
9
+
10
+ This is a presentation release. There are no contract changes and no runtime
11
+ behaviour changes: documents valid against `0.2.0-alpha.0` remain valid, and
12
+ `npm run contract:compat` is clean against the same epoch baseline. The README,
13
+ package metadata, and public documentation now describe the Atelier as a
14
+ repository substrate for people, agents, teams, and tools. Upgrading is a
15
+ dependency bump.
16
+
8
17
  ## Upgrading to 0.2.0-alpha.3
9
18
 
10
19
  No contract changes and no runtime behaviour changes: documents valid against
@@ -85,7 +94,7 @@ For registry installs, pin the exact version and record the resolved version
85
94
  in the lockfile:
86
95
 
87
96
  ```bash
88
- npm install --save-dev @mnstry/atelier@0.2.0-alpha.3
97
+ npm install --save-dev @mnstry/atelier@0.2.0-alpha.4
89
98
  npx mnstry-atelier lock write --project ./atelier.project.json
90
99
  ```
91
100
 
@@ -93,7 +102,7 @@ For Git installs, pin the release tag rather than a branch, so the lock file
93
102
  records exactly what was reviewed:
94
103
 
95
104
  ```bash
96
- npm install --save-dev "git+https://github.com/MNSTRY/atelier.git#v0.2.0-alpha.3"
105
+ npm install --save-dev "git+https://github.com/MNSTRY/atelier.git#v0.2.0-alpha.4"
97
106
  npx mnstry-atelier lock write --project ./atelier.project.json
98
107
  ```
99
108
 
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@mnstry/atelier",
3
- "version": "0.2.0-alpha.3",
3
+ "version": "0.2.0-alpha.4",
4
4
  "private": false,
5
- "description": "Local CLI that compiles a Git repository into a validated knowledge graph front-matter ontology, fail-closed audience boundaries, offline contract conformance. No telemetry, no service, no account.",
5
+ "description": "Local toolkit that turns a Git repository into an ontology-governed knowledge graph, enforcement layer, and runtime for people, agents, and tools. No telemetry, service, or account.",
6
6
  "keywords": [
7
7
  "knowledge-graph",
8
8
  "ontology",
@@ -25,14 +25,15 @@ name (`atelier`) and use the port the harness returns. The equivalent manual
25
25
  command is:
26
26
 
27
27
  ```
28
- ./node_modules/.bin/atelier server
28
+ ./node_modules/.bin/atelier dev
29
29
  ```
30
30
 
31
- Use the local binary path. Do **not** run `npx atelier` this package is not
32
- yet published to npm, and the unscoped name `atelier` belongs to an unrelated
33
- third-party package that `npx` would download and execute.
31
+ Use the local binary path. Do **not** run unscoped `npx atelier`: the unscoped
32
+ name belongs to an unrelated third-party package that `npx` would download and
33
+ execute. From outside an installed workspace, install `@mnstry/atelier` first
34
+ and use the branded `npx mnstry-atelier` command.
34
35
 
35
- `atelier server` resolves its port as **argv > `PORT` env > 8137**, so a
36
+ `atelier dev` resolves its port as **argv > `PORT` env > 8137**, so a
36
37
  supervisor can hand it a free port without a config edit.
37
38
 
38
39
  ## Do not fight for the canonical port
@@ -25,14 +25,15 @@ name (`atelier`) and use the port the harness returns. The equivalent manual
25
25
  command is:
26
26
 
27
27
  ```
28
- ./node_modules/.bin/atelier server
28
+ ./node_modules/.bin/atelier dev
29
29
  ```
30
30
 
31
- Use the local binary path. Do **not** run `npx atelier` this package is not
32
- yet published to npm, and the unscoped name `atelier` belongs to an unrelated
33
- third-party package that `npx` would download and execute.
31
+ Use the local binary path. Do **not** run unscoped `npx atelier`: the unscoped
32
+ name belongs to an unrelated third-party package that `npx` would download and
33
+ execute. From outside an installed workspace, install `@mnstry/atelier` first
34
+ and use the branded `npx mnstry-atelier` command.
34
35
 
35
- `atelier server` resolves its port as **argv > `PORT` env > 8137**, so a
36
+ `atelier dev` resolves its port as **argv > `PORT` env > 8137**, so a
36
37
  supervisor can hand it a free port without a config edit.
37
38
 
38
39
  ## Do not fight for the canonical port