@dharma-ai-labs/agent-fabric 0.1.6 → 0.1.10
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/README.md +45 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +819 -47
- package/dist/index.js.map +1 -1
- package/dist/index.test.js +303 -7
- package/dist/index.test.js.map +1 -1
- package/dist/schemas/evidence-request-v2.schema.json +143 -0
- package/dist/schemas/evidence-request.schema.json +14 -1
- package/dist/schemas/organization-policy-v2.schema.json +254 -0
- package/dist/schemas/trajectory-capsule.schema.json +57 -0
- package/package.json +14 -10
package/README.md
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# `@dharma-ai-labs/agent-fabric`
|
|
2
|
+
|
|
3
|
+
The public `dharma` CLI connects approved local coding-agent workspaces to the
|
|
4
|
+
Dharma Agent Fabric control plane. It enrolls an outbound-only signed device,
|
|
5
|
+
discovers provider capabilities, keeps full trajectories in an encrypted local
|
|
6
|
+
vault, syncs policy-qualified evidence, executes bounded signed tasks, and
|
|
7
|
+
installs signed Skill releases with receipts and rollback ancestry.
|
|
8
|
+
|
|
9
|
+
## Start
|
|
10
|
+
|
|
11
|
+
Requires Node.js 22.20 or later.
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npx --yes @dharma-ai-labs/agent-fabric@latest onboard \
|
|
15
|
+
--hq-url https://www.dharma-ai.io \
|
|
16
|
+
--organization-id <organization-id> \
|
|
17
|
+
--policy-revision <dashboard-policy-revision> \
|
|
18
|
+
--workspace "$PWD"
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Current provider adapters are Codex, Claude Code, and Agy. Run
|
|
22
|
+
`dharma providers list` because evidence, task, continuation, Skill installation,
|
|
23
|
+
activation, and usage capabilities are reported independently.
|
|
24
|
+
|
|
25
|
+
Signed workspace registration returns the organization-admin-approved evidence
|
|
26
|
+
policy from Dharma HQ. The CLI applies that server revision to
|
|
27
|
+
`.dharma/approved-policy.json` automatically. Without an active content grant,
|
|
28
|
+
the policy remains `local_analysis`; with a current bounded grant, it switches
|
|
29
|
+
to `customer_authorized_content` with the server-issued receipt and upload
|
|
30
|
+
limits. A local flag or hand-edited receipt cannot grant content disclosure.
|
|
31
|
+
The running relay refreshes this policy from signed workspace registration every
|
|
32
|
+
minute, so an admin grant or withdrawal does not require a manual sync command.
|
|
33
|
+
|
|
34
|
+
Local metadata analysis is operational triage, not semantic Cognitive Integrity
|
|
35
|
+
evaluation. Nuanced scoring and remediation require approved, redacted evidence;
|
|
36
|
+
missing evidence must produce `insufficient_evidence`.
|
|
37
|
+
|
|
38
|
+
- [Dharma AI](https://www.dharma-ai.io)
|
|
39
|
+
- [Source and issue tracker](https://github.com/dharma-ai-labs/dharma-agent-fabric)
|
|
40
|
+
- [Customer onboarding guide](https://github.com/dharma-ai-labs/dharma-agent-fabric/blob/main/docs/onboarding/customer-guide.md)
|
|
41
|
+
- [CLI command contract](https://github.com/dharma-ai-labs/dharma-agent-fabric/blob/main/docs/22-cli-command-contract.md)
|
|
42
|
+
- [Security boundary](https://github.com/dharma-ai-labs/dharma-agent-fabric/blob/main/docs/10-security-privacy-and-threat-model.md)
|
|
43
|
+
|
|
44
|
+
Licensed under MIT. Do not report security vulnerabilities in a public issue;
|
|
45
|
+
use the private security-reporting channel in the GitHub repository.
|
package/dist/index.d.ts
CHANGED
|
@@ -1,20 +1,32 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { type ProviderId } from '@dharma-ai-labs/agent-fabric-contracts';
|
|
3
3
|
import { type OrganizationPolicy } from '@dharma-ai-labs/agent-fabric-policy';
|
|
4
|
+
import { type SecureSecretStore } from '@dharma-ai-labs/agent-fabric-relay-client';
|
|
4
5
|
import { type SkillBundle } from '@dharma-ai-labs/agent-fabric-skill-manager';
|
|
5
6
|
import { type TaskEnvelope, type TaskReceipt } from '@dharma-ai-labs/agent-fabric-task-runner';
|
|
6
7
|
type Output = unknown;
|
|
7
8
|
export declare function isDirectExecution(argvPath: string | undefined, moduleUrl: string): boolean;
|
|
8
9
|
export declare function rawLocalRetentionDays(policy: Pick<OrganizationPolicy, 'retention'>): number;
|
|
10
|
+
export declare function assertCapsuleIntegrity(capsule: Record<string, unknown>): void;
|
|
11
|
+
export declare function assertCapsuleAuthorizedByCurrentPolicy(capsule: Record<string, unknown>, policy: OrganizationPolicy): void;
|
|
12
|
+
export declare function reserveDailyContentUpload(capsule: Record<string, unknown>, policy: OrganizationPolicy, store?: SecureSecretStore): Promise<void>;
|
|
13
|
+
export declare function releaseDailyContentUpload(capsule: Record<string, unknown>, policy: OrganizationPolicy, _store?: SecureSecretStore): Promise<void>;
|
|
9
14
|
export declare function relayProcessState(home?: string): Promise<'running' | 'stopped' | 'unknown'>;
|
|
10
15
|
export declare function materializeWorkspacePolicy(input: {
|
|
11
16
|
workspace: string;
|
|
12
17
|
organizationId: string;
|
|
13
18
|
revision: string;
|
|
19
|
+
serverPolicyAuthorization?: unknown;
|
|
20
|
+
serverPublicKeyEd25519?: string;
|
|
21
|
+
workspaceId?: string;
|
|
22
|
+
dryRun?: boolean;
|
|
23
|
+
secureStore?: SecureSecretStore;
|
|
14
24
|
}): Promise<{
|
|
15
25
|
relativePath: string;
|
|
16
26
|
policy: OrganizationPolicy;
|
|
27
|
+
applied: boolean;
|
|
17
28
|
}>;
|
|
29
|
+
export declare function applyServerEvidencePolicy(base: OrganizationPolicy, value: unknown, serverPublicKeyEd25519: string, organizationId: string, workspaceId: string, now?: Date): OrganizationPolicy;
|
|
18
30
|
export declare function taskResponsePreview(receipt: TaskReceipt): {
|
|
19
31
|
text: string;
|
|
20
32
|
truncated: boolean;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AASA,OAAO,EAAiE,KAAK,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAExI,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|