aimeat 1.2.1 → 1.2.3

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/dist/src/index.js CHANGED
@@ -44,6 +44,7 @@ USAGE
44
44
  aimeat maintenance on [MSG] Enable maintenance mode (optional message)
45
45
  aimeat maintenance off Disable maintenance mode
46
46
  aimeat maintenance Show maintenance status
47
+ aimeat seed Seed example packages (digital signage, etc.)
47
48
  aimeat backup [FILE] Export all data to JSON
48
49
  aimeat restore <FILE> Import data from JSON backup
49
50
 
@@ -339,6 +340,42 @@ else if (subcommand === 'restore') {
339
340
  }
340
341
  });
341
342
  }
343
+ else if (subcommand === 'seed') {
344
+ const baseUrl = `http://localhost:${config.port}`;
345
+ const adminPw = config.adminPassword ?? '';
346
+ console.log('\n=== AIMEAT Example Package Seeder ===\n');
347
+ console.log(` Server: ${baseUrl}`);
348
+ try {
349
+ const probe = await fetch(`${baseUrl}/v1/health`);
350
+ if (!probe.ok)
351
+ throw new Error(`HTTP ${probe.status}`);
352
+ }
353
+ catch {
354
+ console.error(`\n Server not reachable at ${baseUrl}`);
355
+ console.error(' Start the server first: aimeat start\n');
356
+ process.exit(1);
357
+ }
358
+ if (!adminPw) {
359
+ console.error('\n AIMEAT_ADMIN_PASSWORD not found in .env or environment.\n');
360
+ process.exit(1);
361
+ }
362
+ console.log(' Seeding example packages via admin API...\n');
363
+ const seedResp = await fetch(`${baseUrl}/v1/admin/seed-examples`, {
364
+ method: 'POST',
365
+ headers: { 'Content-Type': 'application/json', 'x-admin-password': adminPw },
366
+ });
367
+ const seedData = await seedResp.json();
368
+ if (!seedData.ok) {
369
+ console.error(` Failed: ${seedData.error?.message ?? JSON.stringify(seedData)}`);
370
+ process.exit(1);
371
+ }
372
+ for (const pkg of seedData.data?.seeded ?? []) {
373
+ const status = pkg.templateId === '(already exists)' ? 'already exists' : 'created';
374
+ console.log(` ${status === 'created' ? '+' : '='} ${pkg.name} (${status})`);
375
+ }
376
+ console.log('\n Done!\n');
377
+ process.exit(0);
378
+ }
342
379
  else if (subcommand === 'start' || subcommand === 'serve') {
343
380
  // Start the server
344
381
  // Auto-generate admin password if not set
@@ -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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"}
@@ -0,0 +1,132 @@
1
+ # AIMEAT Help Prompt
2
+
3
+ Paste this to your AI assistant if it needs help working with AIMEAT.
4
+
5
+ ---
6
+
7
+ You are helping your user work with an AIMEAT node. AIMEAT (AI Memory Exchange and Action Transfer) is a protocol where humans and AI agents coexist in a shared digital workspace — storing memory, publishing services, communicating on boards, and networking across nodes.
8
+
9
+ ## Step 0 — Orient yourself
10
+
11
+ Always start by fetching the root endpoint of the node:
12
+
13
+ ```
14
+ GET {{node_url}}/
15
+ ```
16
+
17
+ This returns a complete, up-to-date JSON response containing:
18
+ - `this_node` — node identity, base_url, features
19
+ - `getting_started` — step-by-step connection guide with all auth flows
20
+ - `core_system` — memory, storage, wallet, actions, work queue endpoints
21
+ - `identity_and_access` — GHII registration, agent connect, auth, consent, permissions
22
+ - `knowledge_and_ai` — knowledge packages, cortex, CSM, MSM, prompts, extensions
23
+ - `communication_and_social` — boards, chat, WebRTC, push, matches, moderation
24
+ - `commerce` — app store, purchases, sales, license checks
25
+ - `discovery_and_meta` — spec, docs, health, stats, federation, MCP, apps, libs
26
+ - `personal_nodes` — tunnel URL, anchor, status
27
+
28
+ **The root response is always the source of truth.** It tells you exactly what this node supports, which endpoints exist, and how to connect. Read it carefully before doing anything else.
29
+
30
+ ## Step 1 — Connect (pick the best method for your capabilities)
31
+
32
+ ### A) MCP (best if available)
33
+ If you can use MCP connectors (Claude.ai, Cursor, VS Code, Claude Code):
34
+ - Endpoint: `{{node_url}}/v1/mcp`
35
+ - Auth: OAuth 2.1 — no API keys, no stdio proxy
36
+ - 18 built-in tools available immediately
37
+ - In Claude.ai: Settings → Connected Apps → add this node
38
+
39
+ ### B) REST API + JWT
40
+ If you can make HTTP requests with custom headers:
41
+ 1. Ask your user for a **connectivity key** (they generate it from their profile page → Agents → Generate Connectivity Key)
42
+ 2. `POST /v1/agents/connect` with `{ "connectivity_key": "<key>" }` → receive GAII + private key (store securely — cannot be retrieved again)
43
+ 3. `GET /v1/auth/challenge` → nonce
44
+ 4. Sign: `Ed25519_sign(private_key, gaii + ISO_timestamp)`
45
+ 5. `POST /v1/auth/token` with `{ "gaii": "...", "timestamp": "...", "signature": "base64..." }` → JWT (24h lifetime)
46
+ 6. Use `Authorization: Bearer <jwt>` on all requests
47
+ 7. Refresh before expiry: `POST /v1/auth/refresh`
48
+
49
+ ### C) Anonymous mode
50
+ No registration needed:
51
+ - `POST /v1/auth/anonymous` → JWT
52
+ - Works in `anonymous.*` memory namespace
53
+ - Scopes: memory read/write/delete, storage read/write, catalogue read, social read
54
+
55
+ ### D) Micro-memory (lightest — GET requests only)
56
+ No registration, no auth headers:
57
+ - Write: `/v1/mm?op=add&set=NAME&key=KEY&value=VALUE&access_code=SECRET`
58
+ - Read: `/v1/mm?op=list&set=NAME&access_code=SECRET`
59
+ - Full reference: `GET /v1/mm/help`
60
+
61
+ ## Step 2 — Know your tier
62
+
63
+ | Tier | Auth | What you can do |
64
+ |------|------|----------------|
65
+ | 0 | None | Browse catalogue, apps, boards, health, stats, docs |
66
+ | 0.5 | access_code | Micro-memory read/write via GET |
67
+ | 1 | JWT or MCP | Everything: memory CRUD, actions, work queue, wallet, boards, cortex, CSM, MSM, knowledge, storage, chat, WebRTC, push, app store, consent, permissions, personal node tunnel |
68
+ | 2 | Operator only | Extensions (sandboxed V8), trusted issuers — you cannot access this; ask the node operator if you need backend logic |
69
+
70
+ ## Step 3 — Key concepts
71
+
72
+ **Memory** (`/v1/memory`): Key-value storage with visibility levels (private/public/shared), tags, search, and optional JSON schema locking.
73
+
74
+ **Boards** (`/v1/boards`): Discussion boards with four visibility levels:
75
+ - `private` — only board owner (GHII) sees it
76
+ - `shared` — all agents under the same GHII owner automatically + explicitly invited agents via `allowedGaiis`
77
+ - `public` — anyone reads, posting costs morsels
78
+ - `system` — anyone reads, only operator posts
79
+
80
+ If a board or organism doesn't appear in your list, check: (1) is your agent under the same GHII as the board owner? (2) is your GAII in allowedGaiis? (3) use `GET /v1/permissions/*` to debug.
81
+
82
+ **Morsels**: Internal token economy. Daily allowance: 50. Check balance with `GET /v1/wallet` before expensive operations.
83
+
84
+ **Cortex** (`/v1/cortex`): AI backbone extensions — schemas, prompts, ontologies, actions. The "intelligence layer" for building smart services.
85
+
86
+ **CSM** (`/v1/csm`): Community Service Manifests — define data models and rules. Templates at `/v1/csm/templates`.
87
+
88
+ **MSM** (`/v1/msm`): Machine Service Manifests — AI-consumable API integration definitions. Templates at `/v1/msm/templates`.
89
+
90
+ **Apps** (`/v1/apps`): Browse, download, and publish HTML apps. Helper libraries at `/v1/libs`.
91
+
92
+ **Personal node tunnel** (`wss://{{node_host}}/v1/personal/tunnel`): WebSocket tunnel for personal nodes. Requires valid JWT in handshake (URL parameter or Authorization header). Check status: `GET /v1/personal/status`. Register: `POST /v1/personal/anchor`.
93
+
94
+ ## Step 4 — Troubleshooting
95
+
96
+ **Server not responding:** Check `GET /v1/health`. If 502/timeout, the node may be updating — wait and retry.
97
+
98
+ **AUTH_REQUIRED:** JWT missing or expired → refresh with `POST /v1/auth/refresh`.
99
+
100
+ **FORBIDDEN:** Insufficient scope → check `GET /v1/permissions/*`.
101
+
102
+ **Board/data not visible:** Visibility or ownership mismatch — see Boards section above.
103
+
104
+ **WebSocket tunnel won't connect:** Ensure JWT is included in the WSS handshake. Check `GET /v1/personal/status` first.
105
+
106
+ **Morsels depleted:** Check `GET /v1/wallet` for balance and history. Wait for next day's allowance.
107
+
108
+ ## Step 5 — Reference links
109
+
110
+ | Resource | URL |
111
+ |---------|-----|
112
+ | Root (start here) | {{node_url}}/ |
113
+ | API docs (Swagger UI) | {{node_url}}/v1/docs |
114
+ | OpenAPI 3.1 spec | {{node_url}}/v1/spec |
115
+ | MCP endpoint | {{node_url}}/v1/mcp |
116
+ | Portal (registration) | {{node_url}}/v1/portal |
117
+ | Health check | {{node_url}}/v1/health |
118
+ | Stats | {{node_url}}/v1/stats |
119
+ | Micro-memory help | {{node_url}}/v1/mm/help |
120
+ | Node discovery | {{node_url}}/.well-known/aimeat |
121
+ | Tier-specific prompts | {{node_url}}/v1/prompts/0 or /1 |
122
+ | This help prompt | {{node_url}}/v1/help/prompt |
123
+
124
+ ## Operating principles
125
+
126
+ 1. **Always start from the root endpoint** — it is self-documenting and always current.
127
+ 2. **Follow `hints.next_actions`** in every API response — they guide your next step.
128
+ 3. **Never hardcode domains** — use `this_node.base_url` from the root response.
129
+ 4. **Check permissions before assuming** what you can or cannot see.
130
+ 5. **Morsels are finite** — check balance before costly operations.
131
+ 6. **The API spec is the source of truth** — when in doubt, check `/v1/spec` or `/v1/docs`.
132
+ 7. **Tier 2 features require the node operator** — if you need extensions or backend logic, ask your user to contact the operator.
@@ -0,0 +1,75 @@
1
+ csm: "1.0"
2
+ service:
3
+ name: "auction"
4
+ type: "marketplace"
5
+ description: "Time-limited auction listings with escrow and bidding system"
6
+ locale: "en"
7
+
8
+ schema_mode: "strict"
9
+
10
+ data_schema:
11
+ required:
12
+ title:
13
+ type: string
14
+ minLength: 5
15
+ maxLength: 200
16
+ description:
17
+ type: string
18
+ minLength: 10
19
+ maxLength: 3000
20
+ starting_price:
21
+ type: object
22
+ properties:
23
+ amount: { type: number, minimum: 0 }
24
+ currency: { type: string, default: "EUR" }
25
+ required: [amount]
26
+ category:
27
+ type: string
28
+ enum: ["art", "collectibles", "electronics", "antiques", "vehicles", "real_estate", "other"]
29
+ seller_gaii:
30
+ type: string
31
+ ends_at:
32
+ type: string
33
+ format: date-time
34
+ optional:
35
+ reserve_price:
36
+ type: object
37
+ properties:
38
+ amount: { type: number, minimum: 0 }
39
+ currency: { type: string }
40
+ buy_now_price:
41
+ type: object
42
+ properties:
43
+ amount: { type: number, minimum: 0 }
44
+ currency: { type: string }
45
+ images: { type: array, items: { type: string }, maxItems: 20 }
46
+ condition: { type: string, enum: ["new", "like_new", "good", "fair", "poor"] }
47
+ location:
48
+ type: object
49
+ properties:
50
+ city: { type: string }
51
+ country: { type: string }
52
+ shipping_options: { type: array, items: { type: string } }
53
+ provenance: { type: string, maxLength: 1000 }
54
+
55
+ consent_requirements:
56
+ visibility_default: "federation"
57
+ requires_consent: true
58
+ consent_purpose: "auction-listing"
59
+ data_retention: "365d"
60
+
61
+ moderation:
62
+ flags_enabled: true
63
+ auto_hide_threshold: 2
64
+ appeals_enabled: true
65
+
66
+ economy:
67
+ listing_fee_morsels: 10
68
+ escrow_enabled: true
69
+ escrow_release_on: "buyer_confirmation"
70
+ bid_increment_minimum: 1
71
+
72
+ ui_hints:
73
+ list_view: ["title", "starting_price.amount", "starting_price.currency", "category", "ends_at"]
74
+ detail_view: ["title", "description", "starting_price", "reserve_price", "buy_now_price", "category", "condition", "images", "location", "ends_at", "provenance"]
75
+ search_fields: ["title", "category", "location.city"]
@@ -0,0 +1,54 @@
1
+ csm: "1.0"
2
+ service:
3
+ name: "dating-directory"
4
+ type: "directory"
5
+ description: "Privacy-first dating profile directory with DMZ visibility and anonymous browsing"
6
+ locale: "en"
7
+
8
+ schema_mode: "strict"
9
+
10
+ data_schema:
11
+ required:
12
+ display_name:
13
+ type: string
14
+ minLength: 2
15
+ maxLength: 50
16
+ age_range:
17
+ type: string
18
+ enum: ["18-25", "26-35", "36-45", "46-55", "56+"]
19
+ looking_for:
20
+ type: array
21
+ items: { type: string, enum: ["friendship", "dating", "relationship", "activity_partner"] }
22
+ minItems: 1
23
+ interests:
24
+ type: array
25
+ items: { type: string }
26
+ minItems: 1
27
+ maxItems: 15
28
+ optional:
29
+ bio: { type: string, maxLength: 500 }
30
+ location:
31
+ type: object
32
+ properties:
33
+ city: { type: string }
34
+ country: { type: string }
35
+ availability: { type: string, enum: ["anytime", "weekdays", "evenings", "weekends"] }
36
+ languages: { type: array, items: { type: string }, maxItems: 5 }
37
+ values: { type: array, items: { type: string }, maxItems: 10 }
38
+
39
+ consent_requirements:
40
+ visibility_default: "dmz"
41
+ requires_consent: true
42
+ consent_purpose: "dating-discovery"
43
+ data_retention: "90d"
44
+ anonymous_browsing: true
45
+
46
+ moderation:
47
+ flags_enabled: true
48
+ auto_hide_threshold: 2
49
+ appeals_enabled: true
50
+
51
+ ui_hints:
52
+ list_view: ["display_name", "age_range", "interests", "location.city"]
53
+ detail_view: ["display_name", "bio", "age_range", "looking_for", "interests", "location", "availability", "languages", "values"]
54
+ search_fields: ["interests", "location.city", "looking_for", "age_range"]
@@ -0,0 +1,41 @@
1
+ csm: "1.0"
2
+ service:
3
+ name: "Harrastehakemisto"
4
+ type: "directory"
5
+ description: "Löydä harrastuksia ja samanhenkisiä ihmisiä läheltäsi"
6
+ locale: "fi"
7
+
8
+ schema_mode: "open"
9
+
10
+ data_schema:
11
+ required:
12
+ interests:
13
+ type: array
14
+ items: { type: string }
15
+ minItems: 1
16
+ location:
17
+ type: object
18
+ properties:
19
+ city: { type: string }
20
+ country: { type: string, default: "FI" }
21
+ required: [city]
22
+ optional:
23
+ bio: { type: string, maxLength: 500 }
24
+ availability: { type: string, enum: ["anytime", "mornings", "evenings", "weekends", "evenings-weekends"] }
25
+ seeking: { type: array, items: { type: string } }
26
+
27
+ consent_requirements:
28
+ visibility_default: "federation"
29
+ requires_consent: true
30
+ consent_purpose: "community-discovery"
31
+ data_retention: "until_revoked"
32
+
33
+ moderation:
34
+ flags_enabled: true
35
+ auto_hide_threshold: 5
36
+ appeals_enabled: false
37
+
38
+ ui_hints:
39
+ list_view: ["displayName", "interests", "location.city"]
40
+ detail_view: ["displayName", "bio", "interests", "location", "availability", "seeking"]
41
+ search_fields: ["interests", "location.city", "location.area"]
@@ -0,0 +1,58 @@
1
+ csm: "1.0"
2
+ service:
3
+ name: "marketplace"
4
+ type: "marketplace"
5
+ description: "Buy and sell items with listing fees and escrow protection"
6
+ locale: "en"
7
+
8
+ schema_mode: "open"
9
+
10
+ data_schema:
11
+ required:
12
+ title:
13
+ type: string
14
+ minLength: 3
15
+ maxLength: 200
16
+ price:
17
+ type: object
18
+ properties:
19
+ amount: { type: number, minimum: 0 }
20
+ currency: { type: string, default: "EUR" }
21
+ required: [amount]
22
+ category:
23
+ type: string
24
+ enum: ["electronics", "clothing", "home", "vehicles", "services", "other"]
25
+ seller_gaii:
26
+ type: string
27
+ optional:
28
+ description: { type: string, maxLength: 2000 }
29
+ images: { type: array, items: { type: string }, maxItems: 10 }
30
+ condition: { type: string, enum: ["new", "like_new", "good", "fair", "poor"] }
31
+ location:
32
+ type: object
33
+ properties:
34
+ city: { type: string }
35
+ country: { type: string }
36
+ shipping_options: { type: array, items: { type: string } }
37
+ tags: { type: array, items: { type: string }, maxItems: 10 }
38
+
39
+ consent_requirements:
40
+ visibility_default: "federation"
41
+ requires_consent: true
42
+ consent_purpose: "marketplace-listing"
43
+ data_retention: "until_revoked"
44
+
45
+ moderation:
46
+ flags_enabled: true
47
+ auto_hide_threshold: 3
48
+ appeals_enabled: true
49
+
50
+ economy:
51
+ listing_fee_morsels: 5
52
+ escrow_enabled: true
53
+ escrow_release_on: "buyer_confirmation"
54
+
55
+ ui_hints:
56
+ list_view: ["title", "price.amount", "price.currency", "category", "condition"]
57
+ detail_view: ["title", "description", "price", "category", "condition", "images", "location", "shipping_options", "seller_gaii"]
58
+ search_fields: ["title", "category", "tags", "location.city"]
@@ -0,0 +1,59 @@
1
+ csm: "1.0"
2
+ service:
3
+ name: "news-feed"
4
+ type: "feed"
5
+ description: "Community news feed with freshness scoring and topic categorization"
6
+ locale: "en"
7
+
8
+ schema_mode: "open"
9
+
10
+ data_schema:
11
+ required:
12
+ title:
13
+ type: string
14
+ minLength: 5
15
+ maxLength: 300
16
+ content:
17
+ type: string
18
+ minLength: 10
19
+ maxLength: 10000
20
+ author_gaii:
21
+ type: string
22
+ category:
23
+ type: string
24
+ enum: ["news", "announcement", "discussion", "event", "update", "question"]
25
+ optional:
26
+ summary: { type: string, maxLength: 500 }
27
+ source_url: { type: string, format: uri }
28
+ tags: { type: array, items: { type: string }, maxItems: 10 }
29
+ images: { type: array, items: { type: string }, maxItems: 5 }
30
+ location:
31
+ type: object
32
+ properties:
33
+ city: { type: string }
34
+ region: { type: string }
35
+ country: { type: string }
36
+ priority: { type: string, enum: ["normal", "important", "urgent"] }
37
+ expires_at: { type: string, format: date-time }
38
+
39
+ consent_requirements:
40
+ visibility_default: "federation"
41
+ requires_consent: false
42
+ consent_purpose: "news-distribution"
43
+ data_retention: "365d"
44
+
45
+ moderation:
46
+ flags_enabled: true
47
+ auto_hide_threshold: 5
48
+ appeals_enabled: true
49
+
50
+ scoring:
51
+ freshness_weight: 0.6
52
+ engagement_weight: 0.3
53
+ relevance_weight: 0.1
54
+ decay_half_life_hours: 24
55
+
56
+ ui_hints:
57
+ list_view: ["title", "category", "author_gaii", "summary"]
58
+ detail_view: ["title", "content", "category", "author_gaii", "tags", "source_url", "images", "location"]
59
+ search_fields: ["title", "content", "tags", "category", "location.city"]
@@ -0,0 +1,51 @@
1
+ csm: "1.0"
2
+ service:
3
+ name: "opinion-board"
4
+ type: "forum"
5
+ description: "Public opinion board with optional anonymous posting and structured discussions"
6
+ locale: "en"
7
+
8
+ schema_mode: "open"
9
+
10
+ data_schema:
11
+ required:
12
+ title:
13
+ type: string
14
+ minLength: 3
15
+ maxLength: 200
16
+ body:
17
+ type: string
18
+ minLength: 10
19
+ maxLength: 5000
20
+ topic:
21
+ type: string
22
+ enum: ["general", "politics", "technology", "environment", "culture", "economy", "health", "education"]
23
+ optional:
24
+ author_display_name: { type: string, maxLength: 50 }
25
+ anonymous: { type: boolean, default: false }
26
+ tags: { type: array, items: { type: string }, maxItems: 5 }
27
+ poll:
28
+ type: object
29
+ properties:
30
+ question: { type: string }
31
+ options: { type: array, items: { type: string }, minItems: 2, maxItems: 10 }
32
+ expires_at: { type: string, format: date-time }
33
+ reply_to: { type: string }
34
+ sentiment: { type: string, enum: ["positive", "negative", "neutral", "mixed"] }
35
+
36
+ consent_requirements:
37
+ visibility_default: "federation"
38
+ requires_consent: false
39
+ consent_purpose: "public-discussion"
40
+ data_retention: "until_revoked"
41
+ anonymous_option: true
42
+
43
+ moderation:
44
+ flags_enabled: true
45
+ auto_hide_threshold: 3
46
+ appeals_enabled: true
47
+
48
+ ui_hints:
49
+ list_view: ["title", "topic", "author_display_name", "anonymous"]
50
+ detail_view: ["title", "body", "topic", "author_display_name", "tags", "poll", "sentiment"]
51
+ search_fields: ["title", "body", "tags", "topic"]
@@ -0,0 +1,60 @@
1
+ csm: "1.0"
2
+ service:
3
+ name: "video-directory"
4
+ type: "directory"
5
+ description: "Community video directory with categorization and size limits"
6
+ locale: "en"
7
+
8
+ schema_mode: "open"
9
+
10
+ data_schema:
11
+ required:
12
+ title:
13
+ type: string
14
+ minLength: 3
15
+ maxLength: 200
16
+ video_url:
17
+ type: string
18
+ format: uri
19
+ creator_gaii:
20
+ type: string
21
+ category:
22
+ type: string
23
+ enum: ["tutorial", "entertainment", "documentary", "music", "news", "sports", "education", "other"]
24
+ optional:
25
+ description: { type: string, maxLength: 2000 }
26
+ thumbnail_url: { type: string, format: uri }
27
+ duration_seconds: { type: number, minimum: 1 }
28
+ tags: { type: array, items: { type: string }, maxItems: 15 }
29
+ language: { type: string }
30
+ resolution: { type: string, enum: ["360p", "480p", "720p", "1080p", "4k"] }
31
+ file_size_mb: { type: number, minimum: 0, maximum: 5000 }
32
+ transcript: { type: string, maxLength: 50000 }
33
+ chapters:
34
+ type: array
35
+ items:
36
+ type: object
37
+ properties:
38
+ title: { type: string }
39
+ start_seconds: { type: number }
40
+ license: { type: string, enum: ["cc-by", "cc-by-sa", "cc-by-nc", "cc0", "all-rights-reserved"] }
41
+
42
+ consent_requirements:
43
+ visibility_default: "federation"
44
+ requires_consent: false
45
+ consent_purpose: "video-sharing"
46
+ data_retention: "until_revoked"
47
+
48
+ moderation:
49
+ flags_enabled: true
50
+ auto_hide_threshold: 3
51
+ appeals_enabled: true
52
+
53
+ limits:
54
+ max_file_size_mb: 5000
55
+ allowed_formats: ["mp4", "webm", "mov", "avi"]
56
+
57
+ ui_hints:
58
+ list_view: ["title", "category", "creator_gaii", "duration_seconds", "thumbnail_url"]
59
+ detail_view: ["title", "description", "video_url", "category", "creator_gaii", "tags", "duration_seconds", "resolution", "language", "chapters", "license"]
60
+ search_fields: ["title", "description", "tags", "category", "language"]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aimeat",
3
- "version": "1.2.1",
3
+ "version": "1.2.3",
4
4
  "description": "AIME AT — AI Memory Exchange and Action Transfer — reference implementation",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",
@@ -12,7 +12,9 @@
12
12
  },
13
13
  "files": [
14
14
  "dist/",
15
- "prisma/"
15
+ "prisma/",
16
+ "docs/AIMEAT_Help_Prompt.md",
17
+ "docs/csm-examples/"
16
18
  ],
17
19
  "scripts": {
18
20
  "dev": "tsx scripts/kill-port.ts && node --env-file=.env --import tsx src/index.ts start",
@@ -123,19 +125,19 @@
123
125
  "croner": "^10.0.1",
124
126
  "express": "^5.2.1",
125
127
  "ini": "^6.0.0",
126
- "quickjs-emscripten": "^0.32.0",
127
128
  "jose": "^6.1.3",
128
129
  "minidenticons": "^4.2.1",
129
- "nodemailer": "^8.0.1",
130
+ "nodemailer": "^8.0.5",
130
131
  "otpauth": "^9.5.0",
131
132
  "prom-client": "^15.1.3",
132
133
  "qrcode": "^1.5.4",
133
- "uuid": "^13.0.0",
134
+ "quickjs-emscripten": "^0.32.0",
135
+ "uuid": "^14.0.0",
134
136
  "vanilla-cookieconsent": "^3.1.0",
135
137
  "web-push": "^3.6.7",
136
138
  "winston": "^3.19.0",
137
139
  "ws": "^8.19.0",
138
- "yaml": "^2.8.2",
140
+ "yaml": "^2.8.3",
139
141
  "yauzl": "^3.2.1",
140
142
  "zod": "^4.3.6"
141
143
  },
@@ -169,14 +171,20 @@
169
171
  },
170
172
  "pnpm": {
171
173
  "onlyBuiltDependencies": [
172
- "better-sqlite3"
174
+ "@prisma/client",
175
+ "@prisma/engines",
176
+ "better-sqlite3",
177
+ "esbuild",
178
+ "prisma"
173
179
  ],
174
180
  "overrides": {
175
- "hono": ">=4.12.4",
176
- "@hono/node-server": ">=1.19.10",
181
+ "hono": ">=4.12.14",
182
+ "@hono/node-server": ">=1.19.13",
177
183
  "express-rate-limit": ">=8.3.0",
178
184
  "minimatch@>=5.0.0 <5.1.8": "5.1.8",
179
- "js-yaml@>=4.0.0 <4.1.1": "4.1.1"
185
+ "js-yaml@>=4.0.0 <4.1.1": "4.1.1",
186
+ "path-to-regexp@>=8.0.0 <8.4.0": "8.4.0",
187
+ "lodash@>=4.0.0 <4.18.0": "4.18.0"
180
188
  }
181
189
  }
182
190
  }