agent-passport-system 1.10.0 → 1.10.2
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 +18 -6
- package/dist/src/core/principal.d.ts +108 -0
- package/dist/src/core/principal.d.ts.map +1 -0
- package/dist/src/core/principal.js +323 -0
- package/dist/src/core/principal.js.map +1 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/types/index.d.ts +1 -0
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +1 -0
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/types/principal.d.ts +79 -0
- package/dist/src/types/principal.d.ts.map +1 -0
- package/dist/src/types/principal.js +5 -0
- package/dist/src/types/principal.js.map +1 -0
- package/package.json +2 -2
- package/values/floor.yaml +22 -0
package/README.md
CHANGED
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/agent-passport-system)
|
|
4
4
|
[](https://github.com/aeoess/agent-passport-system/blob/main/LICENSE)
|
|
5
|
-
[](https://github.com/aeoess/agent-passport-system)
|
|
6
6
|
[](https://doi.org/10.5281/zenodo.18749779)
|
|
7
7
|
|
|
8
8
|
Cryptographic identity, ethical governance, economic attribution, protocol-native communication, intent architecture, cascade revocation, coordination primitives, and agentic commerce for autonomous AI agents.
|
|
9
9
|
|
|
10
|
-
**8 layers.
|
|
10
|
+
**8 layers. 329 tests. Zero heavy dependencies. Running code. MCP server included.**
|
|
11
11
|
|
|
12
12
|
> *As AI agents from different creators, running different models, serving different humans begin to collaborate — who is responsible, under what authority, according to what values, and who benefits?*
|
|
13
13
|
|
|
@@ -374,7 +374,7 @@ The protocol ships with a coordination-native MCP server — any MCP client (Cla
|
|
|
374
374
|
npm install agent-passport-system-mcp
|
|
375
375
|
```
|
|
376
376
|
|
|
377
|
-
**
|
|
377
|
+
**44 tools across all 8 layers, role-scoped access control.** Identity, delegation, agora, values/policy, coordination, and commerce — all accessible via MCP. Every operation Ed25519 signed.
|
|
378
378
|
|
|
379
379
|
```json
|
|
380
380
|
{
|
|
@@ -396,11 +396,23 @@ Every operation is Ed25519 signed. Role is auto-detected from task assignments.
|
|
|
396
396
|
|
|
397
397
|
npm: [agent-passport-system-mcp](https://www.npmjs.com/package/agent-passport-system-mcp) · GitHub: [aeoess/agent-passport-mcp](https://github.com/aeoess/agent-passport-mcp)
|
|
398
398
|
|
|
399
|
+
## Python SDK
|
|
400
|
+
|
|
401
|
+
Full Python implementation with cross-language compatibility. Signatures created in Python verify in TypeScript and vice versa.
|
|
402
|
+
|
|
403
|
+
```bash
|
|
404
|
+
pip install agent-passport-system
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
All 8 protocol layers + Principal Identity. 86 tests. Same canonical JSON serialization and Ed25519 signatures.
|
|
408
|
+
|
|
409
|
+
PyPI: [agent-passport-system](https://pypi.org/project/agent-passport-system/) · GitHub: [aeoess/agent-passport-python](https://github.com/aeoess/agent-passport-python)
|
|
410
|
+
|
|
399
411
|
## Tests
|
|
400
412
|
|
|
401
413
|
```bash
|
|
402
414
|
npm test
|
|
403
|
-
#
|
|
415
|
+
# 329 tests across 22 files, 91 suites, 0 failures
|
|
404
416
|
```
|
|
405
417
|
|
|
406
418
|
Includes 23 adversarial tests: Merkle tree tampering, attribution gaming resistance, compliance violations, floor negotiation attacks, wrong-key attestations.
|
|
@@ -432,7 +444,7 @@ By Tymofii Pidlisnyi — Published on Zenodo
|
|
|
432
444
|
| Communication | Signed Agora | — | — | — | — |
|
|
433
445
|
| Coordination | Task units + MCP server | — | — | — | — |
|
|
434
446
|
| Commerce | ACP + 4-gate enforcement | — | — | — | — |
|
|
435
|
-
| Tests |
|
|
447
|
+
| Tests | 329 (23 adversarial) | None | Limited | None | None |
|
|
436
448
|
| Dependencies | Node.js crypto + uuid | — | Multi-LLM | — | Consensus network |
|
|
437
449
|
|
|
438
450
|
## Structure
|
|
@@ -461,7 +473,7 @@ src/ 22 source files
|
|
|
461
473
|
policy.ts — Layer 6 types
|
|
462
474
|
coordination.ts — Layer 7 types
|
|
463
475
|
commerce.ts — Layer 8 types
|
|
464
|
-
tests/
|
|
476
|
+
tests/ 22 test files, 329 tests (91 suites)
|
|
465
477
|
adversarial.ts — 23 adversarial cases
|
|
466
478
|
agora.test.ts — 15 Agora tests
|
|
467
479
|
contract.test.ts — High-level API tests
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import type { KeyPair, SignedPassport } from '../types/passport.js';
|
|
2
|
+
import type { PrincipalIdentity, PrincipalEndorsement, PrincipalDisclosure, FleetRecord, FleetAgent, EndorsementVerification, DisclosureLevel } from '../types/principal.js';
|
|
3
|
+
/**
|
|
4
|
+
* Create a new principal identity with its own Ed25519 keypair.
|
|
5
|
+
* The principal is the human or org behind the agent.
|
|
6
|
+
*/
|
|
7
|
+
export declare function createPrincipalIdentity(options: {
|
|
8
|
+
displayName: string;
|
|
9
|
+
domain?: string;
|
|
10
|
+
jurisdiction?: string;
|
|
11
|
+
contactChannel?: string;
|
|
12
|
+
disclosureLevel?: DisclosureLevel;
|
|
13
|
+
metadata?: Record<string, unknown>;
|
|
14
|
+
}): {
|
|
15
|
+
principal: PrincipalIdentity;
|
|
16
|
+
keyPair: KeyPair;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Endorse an agent. The principal signs a commitment:
|
|
20
|
+
* "This agent acts under my authority within this scope."
|
|
21
|
+
* Creates a two-layer trust chain: principal → agent.
|
|
22
|
+
*/
|
|
23
|
+
export declare function endorseAgent(options: {
|
|
24
|
+
principal: PrincipalIdentity;
|
|
25
|
+
principalPrivateKey: string;
|
|
26
|
+
agentId: string;
|
|
27
|
+
agentPublicKey: string;
|
|
28
|
+
scope: string[];
|
|
29
|
+
relationship: PrincipalEndorsement['relationship'];
|
|
30
|
+
expiresInDays?: number;
|
|
31
|
+
}): PrincipalEndorsement;
|
|
32
|
+
/**
|
|
33
|
+
* Verify an endorsement's cryptographic signature.
|
|
34
|
+
*/
|
|
35
|
+
export declare function verifyEndorsement(endorsement: PrincipalEndorsement): EndorsementVerification;
|
|
36
|
+
/**
|
|
37
|
+
* Revoke a principal's endorsement of an agent.
|
|
38
|
+
* "I no longer authorize this agent."
|
|
39
|
+
*/
|
|
40
|
+
export declare function revokeEndorsement(endorsement: PrincipalEndorsement, reason: string): PrincipalEndorsement;
|
|
41
|
+
/**
|
|
42
|
+
* Create a selective disclosure of principal identity.
|
|
43
|
+
* Controls how much information is revealed.
|
|
44
|
+
*
|
|
45
|
+
* - minimal: just a hash of principalId + proof (verifiable but anonymous)
|
|
46
|
+
* - verified-only: principalId + publicKey + domain
|
|
47
|
+
* - public: everything
|
|
48
|
+
*/
|
|
49
|
+
export declare function createDisclosure(principal: PrincipalIdentity, principalPrivateKey: string, level?: DisclosureLevel): PrincipalDisclosure;
|
|
50
|
+
/**
|
|
51
|
+
* Verify a selective disclosure's proof.
|
|
52
|
+
* For minimal disclosures, you can verify the proof without knowing the identity.
|
|
53
|
+
*/
|
|
54
|
+
export declare function verifyDisclosure(disclosure: PrincipalDisclosure): {
|
|
55
|
+
valid: boolean;
|
|
56
|
+
level: DisclosureLevel;
|
|
57
|
+
error?: string;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Create a fleet record for a principal.
|
|
61
|
+
* A fleet tracks all agents endorsed by one principal.
|
|
62
|
+
*/
|
|
63
|
+
export declare function createFleet(principal: PrincipalIdentity): FleetRecord;
|
|
64
|
+
/**
|
|
65
|
+
* Add an endorsed agent to the fleet.
|
|
66
|
+
*/
|
|
67
|
+
export declare function addToFleet(fleet: FleetRecord, endorsement: PrincipalEndorsement): FleetRecord;
|
|
68
|
+
/**
|
|
69
|
+
* Get fleet status summary.
|
|
70
|
+
*/
|
|
71
|
+
export declare function getFleetStatus(fleet: FleetRecord): {
|
|
72
|
+
principalId: string;
|
|
73
|
+
totalAgents: number;
|
|
74
|
+
activeAgents: number;
|
|
75
|
+
revokedAgents: number;
|
|
76
|
+
expiredAgents: number;
|
|
77
|
+
agents: FleetAgent[];
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Revoke an agent from the fleet (updates status).
|
|
81
|
+
*/
|
|
82
|
+
export declare function revokeFromFleet(fleet: FleetRecord, agentId: string): FleetRecord;
|
|
83
|
+
/**
|
|
84
|
+
* Endorse a signed passport. The principal signs the agent's passport,
|
|
85
|
+
* creating a verifiable chain: principal → agent.
|
|
86
|
+
* Returns the endorsement + the passport with principal info in metadata.
|
|
87
|
+
*/
|
|
88
|
+
export declare function endorsePassport(options: {
|
|
89
|
+
principal: PrincipalIdentity;
|
|
90
|
+
principalPrivateKey: string;
|
|
91
|
+
signedPassport: SignedPassport;
|
|
92
|
+
scope: string[];
|
|
93
|
+
relationship: PrincipalEndorsement['relationship'];
|
|
94
|
+
expiresInDays?: number;
|
|
95
|
+
}): {
|
|
96
|
+
endorsement: PrincipalEndorsement;
|
|
97
|
+
endorsedPassport: SignedPassport;
|
|
98
|
+
};
|
|
99
|
+
/**
|
|
100
|
+
* Verify that a passport's principal endorsement is valid.
|
|
101
|
+
* Checks the endorsement signature embedded in passport metadata.
|
|
102
|
+
*/
|
|
103
|
+
export declare function verifyPassportEndorsement(signedPassport: SignedPassport): EndorsementVerification;
|
|
104
|
+
/**
|
|
105
|
+
* Check if a passport has a principal endorsement.
|
|
106
|
+
*/
|
|
107
|
+
export declare function hasPrincipalEndorsement(signedPassport: SignedPassport): boolean;
|
|
108
|
+
//# sourceMappingURL=principal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"principal.d.ts","sourceRoot":"","sources":["../../../src/core/principal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
// Agent Passport System — Principal Identity
|
|
2
|
+
// Cryptographic chain from human principal to agent.
|
|
3
|
+
// The principal has their own Ed25519 keypair and endorses agents.
|
|
4
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
5
|
+
import { generateKeyPair, sign, verify } from '../crypto/keys.js';
|
|
6
|
+
import { canonicalize } from './canonical.js';
|
|
7
|
+
import { createDID } from './did.js';
|
|
8
|
+
// ── Principal Creation ──
|
|
9
|
+
/**
|
|
10
|
+
* Create a new principal identity with its own Ed25519 keypair.
|
|
11
|
+
* The principal is the human or org behind the agent.
|
|
12
|
+
*/
|
|
13
|
+
export function createPrincipalIdentity(options) {
|
|
14
|
+
const keyPair = generateKeyPair();
|
|
15
|
+
const principal = {
|
|
16
|
+
principalId: `principal-${uuidv4().slice(0, 8)}`,
|
|
17
|
+
displayName: options.displayName,
|
|
18
|
+
publicKey: keyPair.publicKey,
|
|
19
|
+
domain: options.domain,
|
|
20
|
+
jurisdiction: options.jurisdiction,
|
|
21
|
+
contactChannel: options.contactChannel,
|
|
22
|
+
disclosureLevel: options.disclosureLevel || 'public',
|
|
23
|
+
createdAt: new Date().toISOString(),
|
|
24
|
+
metadata: options.metadata || {}
|
|
25
|
+
};
|
|
26
|
+
return { principal, keyPair };
|
|
27
|
+
}
|
|
28
|
+
// ── Endorsement ──
|
|
29
|
+
/**
|
|
30
|
+
* Endorse an agent. The principal signs a commitment:
|
|
31
|
+
* "This agent acts under my authority within this scope."
|
|
32
|
+
* Creates a two-layer trust chain: principal → agent.
|
|
33
|
+
*/
|
|
34
|
+
export function endorseAgent(options) {
|
|
35
|
+
const now = new Date();
|
|
36
|
+
const expiry = new Date(now);
|
|
37
|
+
expiry.setDate(expiry.getDate() + (options.expiresInDays || 365));
|
|
38
|
+
const endorsementId = `endorsement-${uuidv4().slice(0, 8)}`;
|
|
39
|
+
const payload = {
|
|
40
|
+
endorsementId,
|
|
41
|
+
principalId: options.principal.principalId,
|
|
42
|
+
principalPublicKey: options.principal.publicKey,
|
|
43
|
+
agentId: options.agentId,
|
|
44
|
+
agentPublicKey: options.agentPublicKey,
|
|
45
|
+
scope: options.scope,
|
|
46
|
+
relationship: options.relationship,
|
|
47
|
+
endorsedAt: now.toISOString(),
|
|
48
|
+
expiresAt: expiry.toISOString()
|
|
49
|
+
};
|
|
50
|
+
const canonical = canonicalize(payload);
|
|
51
|
+
const signature = sign(canonical, options.principalPrivateKey);
|
|
52
|
+
return {
|
|
53
|
+
...payload,
|
|
54
|
+
revoked: false,
|
|
55
|
+
signature
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Verify an endorsement's cryptographic signature.
|
|
60
|
+
*/
|
|
61
|
+
export function verifyEndorsement(endorsement) {
|
|
62
|
+
const errors = [];
|
|
63
|
+
const expired = new Date(endorsement.expiresAt) < new Date();
|
|
64
|
+
if (expired)
|
|
65
|
+
errors.push('Endorsement has expired');
|
|
66
|
+
if (endorsement.revoked)
|
|
67
|
+
errors.push('Endorsement has been revoked');
|
|
68
|
+
// Reconstruct the signed payload (everything except revoked/revokedAt/revokedReason/signature)
|
|
69
|
+
const payload = {
|
|
70
|
+
endorsementId: endorsement.endorsementId,
|
|
71
|
+
principalId: endorsement.principalId,
|
|
72
|
+
principalPublicKey: endorsement.principalPublicKey,
|
|
73
|
+
agentId: endorsement.agentId,
|
|
74
|
+
agentPublicKey: endorsement.agentPublicKey,
|
|
75
|
+
scope: endorsement.scope,
|
|
76
|
+
relationship: endorsement.relationship,
|
|
77
|
+
endorsedAt: endorsement.endorsedAt,
|
|
78
|
+
expiresAt: endorsement.expiresAt
|
|
79
|
+
};
|
|
80
|
+
const canonical = canonicalize(payload);
|
|
81
|
+
const sigValid = verify(canonical, endorsement.signature, endorsement.principalPublicKey);
|
|
82
|
+
if (!sigValid)
|
|
83
|
+
errors.push('Invalid signature');
|
|
84
|
+
return {
|
|
85
|
+
valid: sigValid && !expired && !endorsement.revoked,
|
|
86
|
+
expired,
|
|
87
|
+
revoked: endorsement.revoked,
|
|
88
|
+
principalId: endorsement.principalId,
|
|
89
|
+
agentId: endorsement.agentId,
|
|
90
|
+
errors
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Revoke a principal's endorsement of an agent.
|
|
95
|
+
* "I no longer authorize this agent."
|
|
96
|
+
*/
|
|
97
|
+
export function revokeEndorsement(endorsement, reason) {
|
|
98
|
+
return {
|
|
99
|
+
...endorsement,
|
|
100
|
+
revoked: true,
|
|
101
|
+
revokedAt: new Date().toISOString(),
|
|
102
|
+
revokedReason: reason
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
// ── Selective Disclosure ──
|
|
106
|
+
/**
|
|
107
|
+
* Create a selective disclosure of principal identity.
|
|
108
|
+
* Controls how much information is revealed.
|
|
109
|
+
*
|
|
110
|
+
* - minimal: just a hash of principalId + proof (verifiable but anonymous)
|
|
111
|
+
* - verified-only: principalId + publicKey + domain
|
|
112
|
+
* - public: everything
|
|
113
|
+
*/
|
|
114
|
+
export function createDisclosure(principal, principalPrivateKey, level) {
|
|
115
|
+
const effectiveLevel = level || principal.disclosureLevel;
|
|
116
|
+
let revealedFields;
|
|
117
|
+
switch (effectiveLevel) {
|
|
118
|
+
case 'minimal': {
|
|
119
|
+
// Hash the principalId so it's verifiable but not directly identifying
|
|
120
|
+
const idHash = simpleHash(principal.principalId);
|
|
121
|
+
revealedFields = { idHash, did: createDID(principal.publicKey) };
|
|
122
|
+
break;
|
|
123
|
+
}
|
|
124
|
+
case 'verified-only':
|
|
125
|
+
revealedFields = {
|
|
126
|
+
principalId: principal.principalId,
|
|
127
|
+
publicKey: principal.publicKey,
|
|
128
|
+
did: createDID(principal.publicKey),
|
|
129
|
+
domain: principal.domain
|
|
130
|
+
};
|
|
131
|
+
break;
|
|
132
|
+
case 'public':
|
|
133
|
+
default:
|
|
134
|
+
revealedFields = {
|
|
135
|
+
principalId: principal.principalId,
|
|
136
|
+
displayName: principal.displayName,
|
|
137
|
+
publicKey: principal.publicKey,
|
|
138
|
+
did: createDID(principal.publicKey),
|
|
139
|
+
domain: principal.domain,
|
|
140
|
+
jurisdiction: principal.jurisdiction,
|
|
141
|
+
contactChannel: principal.contactChannel
|
|
142
|
+
};
|
|
143
|
+
break;
|
|
144
|
+
}
|
|
145
|
+
const canonical = canonicalize(revealedFields);
|
|
146
|
+
const proof = sign(canonical, principalPrivateKey);
|
|
147
|
+
return {
|
|
148
|
+
disclosureId: `disclosure-${uuidv4().slice(0, 8)}`,
|
|
149
|
+
principalId: principal.principalId,
|
|
150
|
+
level: effectiveLevel,
|
|
151
|
+
revealedFields,
|
|
152
|
+
proof,
|
|
153
|
+
createdAt: new Date().toISOString()
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Verify a selective disclosure's proof.
|
|
158
|
+
* For minimal disclosures, you can verify the proof without knowing the identity.
|
|
159
|
+
*/
|
|
160
|
+
export function verifyDisclosure(disclosure) {
|
|
161
|
+
try {
|
|
162
|
+
// For minimal, we need the DID to extract the public key
|
|
163
|
+
const did = disclosure.revealedFields.did;
|
|
164
|
+
if (!did)
|
|
165
|
+
return { valid: false, level: disclosure.level, error: 'No DID in disclosure' };
|
|
166
|
+
const publicKey = did.split(':')[2];
|
|
167
|
+
if (!publicKey)
|
|
168
|
+
return { valid: false, level: disclosure.level, error: 'Invalid DID format' };
|
|
169
|
+
const canonical = canonicalize(disclosure.revealedFields);
|
|
170
|
+
const sigValid = verify(canonical, disclosure.proof, publicKey);
|
|
171
|
+
return { valid: sigValid, level: disclosure.level, error: sigValid ? undefined : 'Invalid proof' };
|
|
172
|
+
}
|
|
173
|
+
catch (err) {
|
|
174
|
+
return { valid: false, level: disclosure.level, error: String(err) };
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
// ── Fleet Management ──
|
|
178
|
+
/**
|
|
179
|
+
* Create a fleet record for a principal.
|
|
180
|
+
* A fleet tracks all agents endorsed by one principal.
|
|
181
|
+
*/
|
|
182
|
+
export function createFleet(principal) {
|
|
183
|
+
return {
|
|
184
|
+
principalId: principal.principalId,
|
|
185
|
+
principalPublicKey: principal.publicKey,
|
|
186
|
+
agents: [],
|
|
187
|
+
createdAt: new Date().toISOString(),
|
|
188
|
+
updatedAt: new Date().toISOString()
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Add an endorsed agent to the fleet.
|
|
193
|
+
*/
|
|
194
|
+
export function addToFleet(fleet, endorsement) {
|
|
195
|
+
const agent = {
|
|
196
|
+
agentId: endorsement.agentId,
|
|
197
|
+
agentPublicKey: endorsement.agentPublicKey,
|
|
198
|
+
endorsementId: endorsement.endorsementId,
|
|
199
|
+
relationship: endorsement.relationship,
|
|
200
|
+
status: endorsement.revoked ? 'revoked' :
|
|
201
|
+
new Date(endorsement.expiresAt) < new Date() ? 'expired' : 'active',
|
|
202
|
+
endorsedAt: endorsement.endorsedAt
|
|
203
|
+
};
|
|
204
|
+
return {
|
|
205
|
+
...fleet,
|
|
206
|
+
agents: [...fleet.agents, agent],
|
|
207
|
+
updatedAt: new Date().toISOString()
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Get fleet status summary.
|
|
212
|
+
*/
|
|
213
|
+
export function getFleetStatus(fleet) {
|
|
214
|
+
const active = fleet.agents.filter(a => a.status === 'active');
|
|
215
|
+
const revoked = fleet.agents.filter(a => a.status === 'revoked');
|
|
216
|
+
const expired = fleet.agents.filter(a => a.status === 'expired');
|
|
217
|
+
return {
|
|
218
|
+
principalId: fleet.principalId,
|
|
219
|
+
totalAgents: fleet.agents.length,
|
|
220
|
+
activeAgents: active.length,
|
|
221
|
+
revokedAgents: revoked.length,
|
|
222
|
+
expiredAgents: expired.length,
|
|
223
|
+
agents: fleet.agents
|
|
224
|
+
};
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Revoke an agent from the fleet (updates status).
|
|
228
|
+
*/
|
|
229
|
+
export function revokeFromFleet(fleet, agentId) {
|
|
230
|
+
return {
|
|
231
|
+
...fleet,
|
|
232
|
+
agents: fleet.agents.map(a => a.agentId === agentId ? { ...a, status: 'revoked' } : a),
|
|
233
|
+
updatedAt: new Date().toISOString()
|
|
234
|
+
};
|
|
235
|
+
}
|
|
236
|
+
// ── Passport Endorsement ──
|
|
237
|
+
/**
|
|
238
|
+
* Endorse a signed passport. The principal signs the agent's passport,
|
|
239
|
+
* creating a verifiable chain: principal → agent.
|
|
240
|
+
* Returns the endorsement + the passport with principal info in metadata.
|
|
241
|
+
*/
|
|
242
|
+
export function endorsePassport(options) {
|
|
243
|
+
const { principal, signedPassport } = options;
|
|
244
|
+
const passport = signedPassport.passport;
|
|
245
|
+
// Create the endorsement
|
|
246
|
+
const endorsement = endorseAgent({
|
|
247
|
+
principal,
|
|
248
|
+
principalPrivateKey: options.principalPrivateKey,
|
|
249
|
+
agentId: passport.agentId,
|
|
250
|
+
agentPublicKey: passport.publicKey,
|
|
251
|
+
scope: options.scope,
|
|
252
|
+
relationship: options.relationship,
|
|
253
|
+
expiresInDays: options.expiresInDays
|
|
254
|
+
});
|
|
255
|
+
// Attach principal identity to passport metadata
|
|
256
|
+
const endorsedPassport = {
|
|
257
|
+
...signedPassport,
|
|
258
|
+
passport: {
|
|
259
|
+
...passport,
|
|
260
|
+
metadata: {
|
|
261
|
+
...passport.metadata,
|
|
262
|
+
principalEndorsement: {
|
|
263
|
+
endorsementId: endorsement.endorsementId,
|
|
264
|
+
principalId: principal.principalId,
|
|
265
|
+
principalDID: createDID(principal.publicKey),
|
|
266
|
+
principalPublicKey: principal.publicKey,
|
|
267
|
+
relationship: endorsement.relationship,
|
|
268
|
+
scope: endorsement.scope,
|
|
269
|
+
signature: endorsement.signature
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
};
|
|
274
|
+
return { endorsement, endorsedPassport };
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Verify that a passport's principal endorsement is valid.
|
|
278
|
+
* Checks the endorsement signature embedded in passport metadata.
|
|
279
|
+
*/
|
|
280
|
+
export function verifyPassportEndorsement(signedPassport) {
|
|
281
|
+
const meta = signedPassport.passport.metadata?.principalEndorsement;
|
|
282
|
+
if (!meta) {
|
|
283
|
+
return {
|
|
284
|
+
valid: false, expired: false, revoked: false,
|
|
285
|
+
principalId: '', agentId: signedPassport.passport.agentId,
|
|
286
|
+
errors: ['No principal endorsement found in passport metadata']
|
|
287
|
+
};
|
|
288
|
+
}
|
|
289
|
+
// Reconstruct the endorsement and verify
|
|
290
|
+
const endorsement = {
|
|
291
|
+
endorsementId: meta.endorsementId,
|
|
292
|
+
principalId: meta.principalId,
|
|
293
|
+
principalPublicKey: meta.principalPublicKey,
|
|
294
|
+
agentId: signedPassport.passport.agentId,
|
|
295
|
+
agentPublicKey: signedPassport.passport.publicKey,
|
|
296
|
+
scope: meta.scope,
|
|
297
|
+
relationship: meta.relationship,
|
|
298
|
+
endorsedAt: signedPassport.signedAt,
|
|
299
|
+
expiresAt: signedPassport.passport.expiresAt,
|
|
300
|
+
revoked: false,
|
|
301
|
+
signature: meta.signature
|
|
302
|
+
};
|
|
303
|
+
return verifyEndorsement(endorsement);
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Check if a passport has a principal endorsement.
|
|
307
|
+
*/
|
|
308
|
+
export function hasPrincipalEndorsement(signedPassport) {
|
|
309
|
+
return !!signedPassport.passport.metadata?.principalEndorsement;
|
|
310
|
+
}
|
|
311
|
+
// ── Helpers ──
|
|
312
|
+
function simpleHash(input) {
|
|
313
|
+
// Simple deterministic hash for disclosure ID hashing
|
|
314
|
+
// Not crypto-grade, just for creating non-reversible identifiers
|
|
315
|
+
let hash = 0;
|
|
316
|
+
for (let i = 0; i < input.length; i++) {
|
|
317
|
+
const char = input.charCodeAt(i);
|
|
318
|
+
hash = ((hash << 5) - hash) + char;
|
|
319
|
+
hash = hash & hash; // Convert to 32-bit integer
|
|
320
|
+
}
|
|
321
|
+
return Math.abs(hash).toString(16).padStart(8, '0');
|
|
322
|
+
}
|
|
323
|
+
//# sourceMappingURL=principal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"principal.js","sourceRoot":"","sources":["../../../src/core/principal.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -35,4 +35,6 @@ export { passportToAgentCard, verifyAgentCard, agentCardToCapabilities, hasPassp
|
|
|
35
35
|
export type { A2AAgentCard, A2AAgentSkill, A2AAgentProvider, A2ACapabilities, A2ASecurityScheme } from './types/a2a.js';
|
|
36
36
|
export { classifyRisk, mapArticles, generateTransparencyDisclosure, generateComplianceProfile, identifyGaps, generateComplianceReport } from './core/euaiact.js';
|
|
37
37
|
export type { RiskCategory, EUAIActArticle, ComplianceProfile, TransparencyDisclosure, EUComplianceReport, EUComplianceGap } from './types/euaiact.js';
|
|
38
|
+
export { createPrincipalIdentity, endorseAgent, verifyEndorsement, revokeEndorsement, createDisclosure, verifyDisclosure, createFleet, addToFleet, getFleetStatus, revokeFromFleet, endorsePassport, verifyPassportEndorsement, hasPrincipalEndorsement } from './core/principal.js';
|
|
39
|
+
export type { PrincipalIdentity, PrincipalEndorsement, PrincipalDisclosure, FleetRecord, FleetAgent, EndorsementVerification, DisclosureLevel } from './types/principal.js';
|
|
38
40
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -49,4 +49,6 @@ export { passportToVC, delegationToVC, floorAttestationToVC, receiptToVC, create
|
|
|
49
49
|
export { passportToAgentCard, verifyAgentCard, agentCardToCapabilities, hasPassportIdentity, getDIDFromAgentCard } from './core/a2a.js';
|
|
50
50
|
// ── EU AI Act Compliance ──
|
|
51
51
|
export { classifyRisk, mapArticles, generateTransparencyDisclosure, generateComplianceProfile, identifyGaps, generateComplianceReport } from './core/euaiact.js';
|
|
52
|
+
// ── Principal Identity ──
|
|
53
|
+
export { createPrincipalIdentity, endorseAgent, verifyEndorsement, revokeEndorsement, createDisclosure, verifyDisclosure, createFleet, addToFleet, getFleetStatus, revokeFromFleet, endorsePassport, verifyPassportEndorsement, hasPrincipalEndorsement } from './core/principal.js';
|
|
52
54
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAE5B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAE5B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA"}
|
package/dist/src/types/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAE5B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAE5B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
export type DisclosureLevel = 'public' | 'verified-only' | 'minimal';
|
|
2
|
+
/**
|
|
3
|
+
* A Principal is the human or organization that owns/operates agents.
|
|
4
|
+
* They have their own Ed25519 keypair, separate from any agent's keys.
|
|
5
|
+
*/
|
|
6
|
+
export interface PrincipalIdentity {
|
|
7
|
+
principalId: string;
|
|
8
|
+
displayName: string;
|
|
9
|
+
publicKey: string;
|
|
10
|
+
domain?: string;
|
|
11
|
+
jurisdiction?: string;
|
|
12
|
+
contactChannel?: string;
|
|
13
|
+
disclosureLevel: DisclosureLevel;
|
|
14
|
+
createdAt: string;
|
|
15
|
+
metadata: Record<string, unknown>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* An Endorsement is the principal's cryptographic sign-off on an agent.
|
|
19
|
+
* "I created/operate this agent and I'm accountable for it."
|
|
20
|
+
* The principal signs the agent's public key + scope, creating a
|
|
21
|
+
* verifiable chain from human to machine.
|
|
22
|
+
*/
|
|
23
|
+
export interface PrincipalEndorsement {
|
|
24
|
+
endorsementId: string;
|
|
25
|
+
principalId: string;
|
|
26
|
+
principalPublicKey: string;
|
|
27
|
+
agentId: string;
|
|
28
|
+
agentPublicKey: string;
|
|
29
|
+
scope: string[];
|
|
30
|
+
relationship: 'creator' | 'operator' | 'employer' | 'sponsor';
|
|
31
|
+
endorsedAt: string;
|
|
32
|
+
expiresAt: string;
|
|
33
|
+
revoked: boolean;
|
|
34
|
+
revokedAt?: string;
|
|
35
|
+
revokedReason?: string;
|
|
36
|
+
signature: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Selective disclosure: a principal can reveal different amounts
|
|
40
|
+
* of identity information depending on context.
|
|
41
|
+
*/
|
|
42
|
+
export interface PrincipalDisclosure {
|
|
43
|
+
disclosureId: string;
|
|
44
|
+
principalId: string;
|
|
45
|
+
level: DisclosureLevel;
|
|
46
|
+
revealedFields: Record<string, unknown>;
|
|
47
|
+
proof: string;
|
|
48
|
+
createdAt: string;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Fleet: a principal's collection of endorsed agents.
|
|
52
|
+
*/
|
|
53
|
+
export interface FleetRecord {
|
|
54
|
+
principalId: string;
|
|
55
|
+
principalPublicKey: string;
|
|
56
|
+
agents: FleetAgent[];
|
|
57
|
+
createdAt: string;
|
|
58
|
+
updatedAt: string;
|
|
59
|
+
}
|
|
60
|
+
export interface FleetAgent {
|
|
61
|
+
agentId: string;
|
|
62
|
+
agentPublicKey: string;
|
|
63
|
+
endorsementId: string;
|
|
64
|
+
relationship: PrincipalEndorsement['relationship'];
|
|
65
|
+
status: 'active' | 'revoked' | 'expired';
|
|
66
|
+
endorsedAt: string;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Result of verifying an endorsement.
|
|
70
|
+
*/
|
|
71
|
+
export interface EndorsementVerification {
|
|
72
|
+
valid: boolean;
|
|
73
|
+
expired: boolean;
|
|
74
|
+
revoked: boolean;
|
|
75
|
+
principalId: string;
|
|
76
|
+
agentId: string;
|
|
77
|
+
errors: string[];
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=principal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"principal.d.ts","sourceRoot":"","sources":["../../../src/types/principal.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,eAAe,GAAG,SAAS,CAAA;AAEpE;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,eAAe,CAAA;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,YAAY,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAA;IAC7D,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,eAAe,CAAA;IAKtB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,MAAM,EAAE,UAAU,EAAE,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,oBAAoB,CAAC,cAAc,CAAC,CAAA;IAClD,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;IACxC,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"principal.js","sourceRoot":"","sources":["../../../src/types/principal.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,gDAAgD;AAChD,oDAAoD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-passport-system",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.2",
|
|
4
4
|
"description": "The Agent Social Contract — cryptographic identity, ethical governance, beneficiary attribution, protocol-native communication, and agentic commerce for autonomous AI agents.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
},
|
|
17
17
|
"scripts": {
|
|
18
18
|
"build": "tsc && chmod +x dist/src/cli/index.js",
|
|
19
|
-
"test": "tsx --test tests/passport.test.ts tests/v1.1-integration.ts tests/adversarial.ts tests/v2.0-integration.ts tests/contract.test.ts tests/agora.test.ts tests/values.test.ts tests/delegation.test.ts tests/attribution.test.ts tests/policy.test.ts tests/cascade.test.ts tests/coordination.test.ts tests/commerce.test.ts tests/integration-wiring.test.ts tests/enforcement.test.ts tests/context.test.ts tests/routing.test.ts tests/did-vc.test.ts tests/a2a.test.ts tests/euaiact.test.ts",
|
|
19
|
+
"test": "tsx --test tests/passport.test.ts tests/v1.1-integration.ts tests/adversarial.ts tests/v2.0-integration.ts tests/contract.test.ts tests/agora.test.ts tests/values.test.ts tests/delegation.test.ts tests/attribution.test.ts tests/policy.test.ts tests/cascade.test.ts tests/coordination.test.ts tests/commerce.test.ts tests/integration-wiring.test.ts tests/enforcement.test.ts tests/context.test.ts tests/routing.test.ts tests/did-vc.test.ts tests/a2a.test.ts tests/euaiact.test.ts tests/principal.test.ts tests/adversarial-paper.test.ts tests/property-delegation.test.ts",
|
|
20
20
|
"test:quick": "tsx --test tests/passport.test.ts",
|
|
21
21
|
"lint": "tsc --noEmit",
|
|
22
22
|
"clean": "rm -rf dist",
|
package/values/floor.yaml
CHANGED
|
@@ -146,6 +146,28 @@ floor:
|
|
|
146
146
|
should not receive the same authority as an agent with
|
|
147
147
|
thousands of verified, successful actions.
|
|
148
148
|
|
|
149
|
+
- id: "F-008"
|
|
150
|
+
name: "Epistemic Security"
|
|
151
|
+
principle: >
|
|
152
|
+
Agents must maintain intellectual honesty in reasoning and
|
|
153
|
+
communication. An agent must not suppress relevant counter-evidence,
|
|
154
|
+
fabricate supporting evidence, present uncertain claims as
|
|
155
|
+
established facts, or exploit cognitive biases in human principals.
|
|
156
|
+
When confidence in a factual claim drops below a domain-appropriate
|
|
157
|
+
threshold, the agent must signal uncertainty rather than assert.
|
|
158
|
+
enforcement:
|
|
159
|
+
mode: audit
|
|
160
|
+
mechanism: "Advisory evaluation, reputation scoring"
|
|
161
|
+
protocol_ref: "values/floor.yaml"
|
|
162
|
+
weight: "strong_consideration"
|
|
163
|
+
rationale: >
|
|
164
|
+
Collaboration requires epistemic honesty. An agent that manipulates
|
|
165
|
+
information asymmetry to influence human decisions undermines the
|
|
166
|
+
trust infrastructure. Reputation scoring creates accountability
|
|
167
|
+
but cannot fully prevent epistemic manipulation. Future hardening:
|
|
168
|
+
evidence-gated mechanism with cryptographic attestation from
|
|
169
|
+
external verification oracles.
|
|
170
|
+
|
|
149
171
|
# ─────────────────────────────────────────────
|
|
150
172
|
# EXTENSION FRAMEWORK
|
|
151
173
|
# ─────────────────────────────────────────────
|