@miakapp/cli 4.0.0-alpha.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.
Files changed (61) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +230 -0
  3. package/assets/agent-guide.md +408 -0
  4. package/bin/miakapp.js +10 -0
  5. package/dist/agent-pack.d.ts +78 -0
  6. package/dist/agent-pack.d.ts.map +1 -0
  7. package/dist/agent-pack.js +193 -0
  8. package/dist/agent-pack.js.map +1 -0
  9. package/dist/artifact.d.ts +32 -0
  10. package/dist/artifact.d.ts.map +1 -0
  11. package/dist/artifact.js +328 -0
  12. package/dist/artifact.js.map +1 -0
  13. package/dist/control-plane.d.ts +37 -0
  14. package/dist/control-plane.d.ts.map +1 -0
  15. package/dist/control-plane.js +127 -0
  16. package/dist/control-plane.js.map +1 -0
  17. package/dist/discovery.d.ts +95 -0
  18. package/dist/discovery.d.ts.map +1 -0
  19. package/dist/discovery.js +389 -0
  20. package/dist/discovery.js.map +1 -0
  21. package/dist/errors.d.ts +37 -0
  22. package/dist/errors.d.ts.map +1 -0
  23. package/dist/errors.js +56 -0
  24. package/dist/errors.js.map +1 -0
  25. package/dist/internal/http.d.ts +35 -0
  26. package/dist/internal/http.d.ts.map +1 -0
  27. package/dist/internal/http.js +125 -0
  28. package/dist/internal/http.js.map +1 -0
  29. package/dist/internal/json.d.ts +15 -0
  30. package/dist/internal/json.d.ts.map +1 -0
  31. package/dist/internal/json.js +227 -0
  32. package/dist/internal/json.js.map +1 -0
  33. package/dist/internal/names.d.ts +45 -0
  34. package/dist/internal/names.d.ts.map +1 -0
  35. package/dist/internal/names.js +98 -0
  36. package/dist/internal/names.js.map +1 -0
  37. package/dist/internal/requirements.d.ts +10 -0
  38. package/dist/internal/requirements.d.ts.map +1 -0
  39. package/dist/internal/requirements.js +50 -0
  40. package/dist/internal/requirements.js.map +1 -0
  41. package/dist/internal/yaml.d.ts +26 -0
  42. package/dist/internal/yaml.d.ts.map +1 -0
  43. package/dist/internal/yaml.js +184 -0
  44. package/dist/internal/yaml.js.map +1 -0
  45. package/dist/main.d.ts +86 -0
  46. package/dist/main.d.ts.map +1 -0
  47. package/dist/main.js +666 -0
  48. package/dist/main.js.map +1 -0
  49. package/dist/mcp.d.ts +93 -0
  50. package/dist/mcp.d.ts.map +1 -0
  51. package/dist/mcp.js +524 -0
  52. package/dist/mcp.js.map +1 -0
  53. package/dist/project.d.ts +25 -0
  54. package/dist/project.d.ts.map +1 -0
  55. package/dist/project.js +90 -0
  56. package/dist/project.js.map +1 -0
  57. package/dist/publication.d.ts +95 -0
  58. package/dist/publication.d.ts.map +1 -0
  59. package/dist/publication.js +408 -0
  60. package/dist/publication.js.map +1 -0
  61. package/package.json +49 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { type Requirements } from './internal/names.js';
2
+ export declare const PROJECT_FILE = "miakapp.yaml";
3
+ export declare const PROJECT_SCHEMA = "miakapp.project/1";
4
+ export interface Project {
5
+ readonly root: string;
6
+ readonly homeId: string;
7
+ readonly issuer: string;
8
+ readonly artifactPath: string;
9
+ readonly release: string;
10
+ readonly requires: Requirements;
11
+ readonly coordinatorEntry: string | undefined;
12
+ }
13
+ /**
14
+ * Resolves a declared path inside the project root. An absolute path or one that
15
+ * escapes the root is rejected so a published artifact always comes from the
16
+ * repository the agent is working in.
17
+ */
18
+ export declare function resolveProjectPath(root: string, declared: unknown, label: string): string;
19
+ export declare function parseProject(root: string, source: string): Project;
20
+ /**
21
+ * Walks up from `start` to find the project root. An agent may run the CLI from
22
+ * any subdirectory of the repository it is editing.
23
+ */
24
+ export declare function findProjectFile(start: string, exists: (path: string) => Promise<boolean>): Promise<string>;
25
+ //# sourceMappingURL=project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"AAGA,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAI7E,eAAO,MAAM,YAAY,iBAAiB,CAAC;AAC3C,eAAO,MAAM,cAAc,sBAAsB,CAAC;AAElD,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/C;AAgBD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAYzF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CA0ClE;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,GACzC,OAAO,CAAC,MAAM,CAAC,CAcjB"}
@@ -0,0 +1,90 @@
1
+ import { isAbsolute, join, normalize, resolve, sep } from 'node:path';
2
+ import { projectError } from './errors.js';
3
+ import { canonicalHttpsUrl } from './internal/http.js';
4
+ import { isHomeId, isRelease } from './internal/names.js';
5
+ import { canonicalRequirements } from './internal/requirements.js';
6
+ import { parseYaml } from './internal/yaml.js';
7
+ export const PROJECT_FILE = 'miakapp.yaml';
8
+ export const PROJECT_SCHEMA = 'miakapp.project/1';
9
+ function mapping(value, label) {
10
+ if (value === null || value === undefined || Array.isArray(value) || typeof value !== 'object') {
11
+ throw projectError(`${label} must be a mapping`);
12
+ }
13
+ return value;
14
+ }
15
+ function exactKeys(source, allowed, label) {
16
+ const unknown = Object.keys(source).filter((key) => !allowed.includes(key));
17
+ if (unknown.length > 0) {
18
+ throw projectError(`${label} has unknown keys: ${unknown.join(', ')}`);
19
+ }
20
+ }
21
+ /**
22
+ * Resolves a declared path inside the project root. An absolute path or one that
23
+ * escapes the root is rejected so a published artifact always comes from the
24
+ * repository the agent is working in.
25
+ */
26
+ export function resolveProjectPath(root, declared, label) {
27
+ if (typeof declared !== 'string' || declared === '') {
28
+ throw projectError(`${label} must be a relative path inside the project`);
29
+ }
30
+ if (isAbsolute(declared) || declared.includes('\0')) {
31
+ throw projectError(`${label} must be relative to the project root`);
32
+ }
33
+ const normalized = normalize(declared);
34
+ if (normalized === '..' || normalized.startsWith(`..${sep}`)) {
35
+ throw projectError(`${label} must not leave the project root`);
36
+ }
37
+ return join(root, normalized);
38
+ }
39
+ export function parseProject(root, source) {
40
+ const document = parseYaml(source);
41
+ exactKeys(document, ['schema', 'home', 'control_plane', 'component', 'coordinator'], PROJECT_FILE);
42
+ if (document.schema !== PROJECT_SCHEMA) {
43
+ throw projectError(`${PROJECT_FILE} must declare schema: ${PROJECT_SCHEMA}`, 'Run miakapp init to generate a current project file.');
44
+ }
45
+ if (!isHomeId(document.home)) {
46
+ throw projectError('home must be a Miakapp home ID of 3..63 bytes matching [a-z][a-z0-9-]*[a-z0-9]');
47
+ }
48
+ const issuer = canonicalHttpsUrl(document.control_plane, 'control_plane');
49
+ if (issuer.endsWith('/'))
50
+ throw projectError('control_plane must not have a trailing slash');
51
+ const component = mapping(document.component, 'component');
52
+ exactKeys(component, ['artifact', 'release', 'requires'], 'component');
53
+ if (!isRelease(component.release)) {
54
+ throw projectError('component.release must be 1..64 UTF-8 bytes without control characters');
55
+ }
56
+ const requires = canonicalRequirements(component.requires === undefined || component.requires === null ? {} : component.requires);
57
+ let coordinatorEntry;
58
+ if (document.coordinator !== undefined && document.coordinator !== null) {
59
+ const coordinator = mapping(document.coordinator, 'coordinator');
60
+ exactKeys(coordinator, ['entry'], 'coordinator');
61
+ coordinatorEntry = resolveProjectPath(root, coordinator.entry, 'coordinator.entry');
62
+ }
63
+ return Object.freeze({
64
+ root,
65
+ homeId: document.home,
66
+ issuer,
67
+ artifactPath: resolveProjectPath(root, component.artifact, 'component.artifact'),
68
+ release: component.release,
69
+ requires,
70
+ coordinatorEntry,
71
+ });
72
+ }
73
+ /**
74
+ * Walks up from `start` to find the project root. An agent may run the CLI from
75
+ * any subdirectory of the repository it is editing.
76
+ */
77
+ export async function findProjectFile(start, exists) {
78
+ let directory = resolve(start);
79
+ while (true) {
80
+ const candidate = join(directory, PROJECT_FILE);
81
+ if (await exists(candidate))
82
+ return candidate;
83
+ const parent = resolve(directory, '..');
84
+ if (parent === directory) {
85
+ throw projectError(`No ${PROJECT_FILE} found in ${start} or any parent directory`, 'Run miakapp init to create one.');
86
+ }
87
+ directory = parent;
88
+ }
89
+ }
90
+ //# sourceMappingURL=project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,95 @@
1
+ import { type FetchLike } from './internal/http.js';
2
+ import { type Requirements } from './internal/names.js';
3
+ import type { Artifact } from './artifact.js';
4
+ export declare const COMPONENT_ABI = "miakapp.component/1";
5
+ export type UploadStatus = 'awaiting_upload' | 'delivered' | 'finalized';
6
+ export interface UploadCapability {
7
+ readonly uploadId: string;
8
+ readonly uploadUrl: string;
9
+ readonly uploadToken: string;
10
+ readonly expiresAt: string;
11
+ }
12
+ export interface UploadState {
13
+ readonly uploadId: string;
14
+ readonly status: UploadStatus;
15
+ readonly release: string;
16
+ readonly abi: string;
17
+ readonly sha256: string;
18
+ readonly size: number;
19
+ readonly requires: Requirements;
20
+ readonly expiresAt: string;
21
+ }
22
+ export interface ComponentRelease {
23
+ readonly release: string;
24
+ readonly abi: string;
25
+ readonly sha256: string;
26
+ readonly size: number;
27
+ readonly requires: Requirements;
28
+ readonly finalizedAt: string;
29
+ }
30
+ export interface ComponentPointer {
31
+ readonly homeId: string;
32
+ readonly generation: number;
33
+ readonly release: string;
34
+ readonly abi: string;
35
+ readonly url: string;
36
+ readonly sha256: string;
37
+ readonly size: number;
38
+ readonly requires: Requirements;
39
+ }
40
+ export interface PublicationTarget {
41
+ /** Control-plane issuer, without a trailing slash. */
42
+ readonly issuer: string;
43
+ readonly homeId: string;
44
+ /** Five-minute `components:publish` access token. */
45
+ readonly token: string;
46
+ readonly fetch?: FetchLike;
47
+ readonly signal?: AbortSignal;
48
+ }
49
+ export interface UploadRequest {
50
+ readonly release: string;
51
+ readonly requires: Requirements;
52
+ }
53
+ /** Step 1: request one capability bound to the complete publication tuple. */
54
+ export declare function requestUpload(target: PublicationTarget, artifact: Artifact, request: UploadRequest): Promise<UploadCapability>;
55
+ /**
56
+ * Step 2: deliver the exact bytes once.
57
+ *
58
+ * A lost response is never retried with a new capability: the caller reconciles
59
+ * through {@link readUpload}, which distinguishes `awaiting_upload` from
60
+ * `delivered`.
61
+ */
62
+ export declare function deliverArtifact(target: PublicationTarget, capability: UploadCapability, artifact: Artifact): Promise<void>;
63
+ /** Step 3: finalize only the delivered, content-addressed object. */
64
+ export declare function finalizeUpload(target: PublicationTarget, uploadId: string): Promise<ComponentRelease>;
65
+ /** Reconciliation read that tells a lost `PUT` from an undelivered upload. */
66
+ export declare function readUpload(target: PublicationTarget, uploadId: string): Promise<UploadState>;
67
+ /** Reconciliation read for a lost finalization response. */
68
+ export declare function readRelease(target: PublicationTarget, sha256: string): Promise<ComponentRelease | undefined>;
69
+ /**
70
+ * Step 4: compare-and-set the home pointer to a strictly greater generation.
71
+ *
72
+ * Activation is one transaction and is never blindly retried: a stale
73
+ * `expected_generation` fails with `generation_conflict` rather than
74
+ * last-write-wins.
75
+ */
76
+ export declare function activateRelease(target: PublicationTarget, activation: {
77
+ readonly sha256: string;
78
+ readonly expectedGeneration: number;
79
+ readonly generation: number;
80
+ }): Promise<ComponentPointer>;
81
+ /**
82
+ * Publishes one artifact: capability, delivery, finalization, activation.
83
+ *
84
+ * Every step is checked against the locally computed digest, size and
85
+ * requirements, so a control plane that echoes different metadata is rejected
86
+ * rather than trusted.
87
+ */
88
+ export declare function publish(target: PublicationTarget, artifact: Artifact, request: UploadRequest & {
89
+ readonly expectedGeneration: number;
90
+ readonly generation: number;
91
+ }): Promise<{
92
+ readonly release: ComponentRelease;
93
+ readonly pointer: ComponentPointer;
94
+ }>;
95
+ //# sourceMappingURL=publication.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publication.d.ts","sourceRoot":"","sources":["../src/publication.ts"],"names":[],"mappings":"AAQA,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,oBAAoB,CAAC;AAQ5B,OAAO,EASL,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,eAAO,MAAM,aAAa,wBAAwB,CAAC;AAKnD,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG,WAAW,GAAG,WAAW,CAAC;AAEzE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,sDAAsD;IACtD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qDAAqD;IACrD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;CACjC;AAgQD,8EAA8E;AAC9E,wBAAsB,aAAa,CACjC,MAAM,EAAE,iBAAiB,EACzB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,gBAAgB,CAAC,CAoB3B;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,gBAAgB,EAC5B,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED,qEAAqE;AACrE,wBAAsB,cAAc,CAClC,MAAM,EAAE,iBAAiB,EACzB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,gBAAgB,CAAC,CAW3B;AAED,8EAA8E;AAC9E,wBAAsB,UAAU,CAC9B,MAAM,EAAE,iBAAiB,EACzB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,WAAW,CAAC,CAWtB;AAED,4DAA4D;AAC5D,wBAAsB,WAAW,CAC/B,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAgBvC;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE;IACV,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,GACA,OAAO,CAAC,gBAAgB,CAAC,CAyB3B;AAED;;;;;;GAMG;AACH,wBAAsB,OAAO,CAC3B,MAAM,EAAE,iBAAiB,EACzB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,aAAa,GAAG;IACvB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,GACA,OAAO,CAAC;IAAE,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAAC,CAgCrF"}