aimeat 1.24.1 → 1.25.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.
- package/README.md +2 -0
- package/dist/.env.example +10 -0
- package/dist/locales/en.json +311 -4
- package/dist/locales/fi.json +311 -4
- package/dist/public/components/ImageDeliverable.js +208 -0
- package/dist/public/components/JsonView.js +67 -0
- package/dist/public/components/Markdown.js +29 -2
- package/dist/public/components/NotificationBell.js +21 -1
- package/dist/public/css/components/image-deliverable.css +77 -0
- package/dist/public/css/views/inbox.css +286 -0
- package/dist/public/css/views/landing.css +60 -3
- package/dist/public/css/views/offers.css +62 -0
- package/dist/public/css/views/profile.css +332 -2
- package/dist/public/css/views/workflows.css +58 -15
- package/dist/public/js/services/ecosystem.js +120 -0
- package/dist/public/js/services/messages.js +93 -0
- package/dist/public/js/services/offers-grouping.js +204 -0
- package/dist/public/js/services/offers.js +61 -1
- package/dist/public/js/services/organisms.js +17 -6
- package/dist/public/js/services/schedules.js +61 -1
- package/dist/public/spa.html +7 -0
- package/dist/public/views/landing-activity.js +140 -0
- package/dist/public/views/landing.js +345 -93
- package/dist/public/views/profile/agents-tasks-subtab.js +20 -10
- package/dist/public/views/profile/ecosystem-tab.js +1244 -0
- package/dist/public/views/profile/inbox-tab.js +407 -0
- package/dist/public/views/profile/landing-page.js +29 -0
- package/dist/public/views/profile/memory-tab.js +5 -0
- package/dist/public/views/profile/offers-tab.js +316 -24
- package/dist/public/views/profile/organisms-tab.js +144 -20
- package/dist/public/views/profile/workflows-form.js +8 -0
- package/dist/public/views/profile/workflows-tab.js +10 -0
- package/dist/public/views/profile.js +5 -1
- package/dist/public/views/start-flows.js +4 -0
- package/dist/src/auth/jwt.d.ts +2 -0
- package/dist/src/auth/jwt.d.ts.map +1 -1
- package/dist/src/auth/jwt.js +13 -0
- package/dist/src/auth/jwt.js.map +1 -1
- package/dist/src/auth/middleware.d.ts +9 -0
- package/dist/src/auth/middleware.d.ts.map +1 -1
- package/dist/src/auth/middleware.js +53 -9
- package/dist/src/auth/middleware.js.map +1 -1
- package/dist/src/cli/connect/config.d.ts.map +1 -1
- package/dist/src/cli/connect/config.js +14 -4
- package/dist/src/cli/connect/config.js.map +1 -1
- package/dist/src/cli/connect/mcp/local-server.d.ts +14 -0
- package/dist/src/cli/connect/mcp/local-server.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/local-server.js +44 -1
- package/dist/src/cli/connect/mcp/local-server.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/workspaces.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/workspaces.js +4 -0
- package/dist/src/cli/connect/mcp/tools/workspaces.js.map +1 -1
- package/dist/src/cli/connect/tool-call.d.ts.map +1 -1
- package/dist/src/cli/connect/tool-call.js +6 -0
- package/dist/src/cli/connect/tool-call.js.map +1 -1
- package/dist/src/cli/connect/tunnel-client.d.ts +6 -0
- package/dist/src/cli/connect/tunnel-client.d.ts.map +1 -1
- package/dist/src/cli/connect/tunnel-client.js +1 -1
- package/dist/src/cli/connect/tunnel-client.js.map +1 -1
- package/dist/src/config.d.ts +5 -0
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +7 -0
- package/dist/src/config.js.map +1 -1
- package/dist/src/generated/api-types.d.ts +2903 -645
- package/dist/src/generated/api-types.d.ts.map +1 -1
- package/dist/src/generated/prisma-postgres/edge.js +96 -4
- package/dist/src/generated/prisma-postgres/index-browser.js +93 -1
- package/dist/src/generated/prisma-postgres/index.d.ts +19121 -11579
- package/dist/src/generated/prisma-postgres/index.js +96 -4
- package/dist/src/generated/prisma-postgres/package.json +1 -1
- package/dist/src/generated/prisma-postgres/schema.prisma +102 -0
- package/dist/src/generated/prisma-postgres/wasm.js +96 -4
- package/dist/src/index.js +4 -3
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/annotations.d.ts.map +1 -1
- package/dist/src/mcp/annotations.js +1 -0
- package/dist/src/mcp/annotations.js.map +1 -1
- package/dist/src/mcp/catalog/definitions.d.ts.map +1 -1
- package/dist/src/mcp/catalog/definitions.js +12 -0
- package/dist/src/mcp/catalog/definitions.js.map +1 -1
- package/dist/src/mcp/catalog/surfaces.js +3 -3
- package/dist/src/mcp/catalog/surfaces.js.map +1 -1
- package/dist/src/mcp/workspaces.d.ts.map +1 -1
- package/dist/src/mcp/workspaces.js +18 -0
- package/dist/src/mcp/workspaces.js.map +1 -1
- package/dist/src/models/agent-task-schemas.d.ts +5 -5
- package/dist/src/models/ecosystem-event-schemas.d.ts +63 -0
- package/dist/src/models/ecosystem-event-schemas.d.ts.map +1 -0
- package/dist/src/models/ecosystem-event-schemas.js +68 -0
- package/dist/src/models/ecosystem-event-schemas.js.map +1 -0
- package/dist/src/models/ecosystem-manifest.d.ts +75 -0
- package/dist/src/models/ecosystem-manifest.d.ts.map +1 -0
- package/dist/src/models/ecosystem-manifest.js +107 -0
- package/dist/src/models/ecosystem-manifest.js.map +1 -0
- package/dist/src/models/message-schemas.d.ts +51 -0
- package/dist/src/models/message-schemas.d.ts.map +1 -0
- package/dist/src/models/message-schemas.js +35 -0
- package/dist/src/models/message-schemas.js.map +1 -0
- package/dist/src/models/offer-schemas.d.ts +30 -0
- package/dist/src/models/offer-schemas.d.ts.map +1 -1
- package/dist/src/models/offer-schemas.js +35 -1
- package/dist/src/models/offer-schemas.js.map +1 -1
- package/dist/src/models/workflow-schemas.d.ts +54 -4
- package/dist/src/models/workflow-schemas.d.ts.map +1 -1
- package/dist/src/models/workflow-schemas.js +31 -2
- package/dist/src/models/workflow-schemas.js.map +1 -1
- package/dist/src/routes/agent-tasks.d.ts +8 -0
- package/dist/src/routes/agent-tasks.d.ts.map +1 -1
- package/dist/src/routes/agent-tasks.js +38 -0
- package/dist/src/routes/agent-tasks.js.map +1 -1
- package/dist/src/routes/agents.d.ts.map +1 -1
- package/dist/src/routes/agents.js +30 -1
- package/dist/src/routes/agents.js.map +1 -1
- package/dist/src/routes/apps.d.ts +1 -0
- package/dist/src/routes/apps.d.ts.map +1 -1
- package/dist/src/routes/apps.js +10 -0
- package/dist/src/routes/apps.js.map +1 -1
- package/dist/src/routes/ecosystem-apps.d.ts +51 -0
- package/dist/src/routes/ecosystem-apps.d.ts.map +1 -0
- package/dist/src/routes/ecosystem-apps.js +689 -0
- package/dist/src/routes/ecosystem-apps.js.map +1 -0
- package/dist/src/routes/ecosystem-events.d.ts +21 -0
- package/dist/src/routes/ecosystem-events.d.ts.map +1 -0
- package/dist/src/routes/ecosystem-events.js +157 -0
- package/dist/src/routes/ecosystem-events.js.map +1 -0
- package/dist/src/routes/federation-sync.d.ts.map +1 -1
- package/dist/src/routes/federation-sync.js +170 -0
- package/dist/src/routes/federation-sync.js.map +1 -1
- package/dist/src/routes/knowledge.d.ts +2 -0
- package/dist/src/routes/knowledge.d.ts.map +1 -1
- package/dist/src/routes/knowledge.js +23 -0
- package/dist/src/routes/knowledge.js.map +1 -1
- package/dist/src/routes/memory.d.ts +2 -0
- package/dist/src/routes/memory.d.ts.map +1 -1
- package/dist/src/routes/memory.js +34 -6
- package/dist/src/routes/memory.js.map +1 -1
- package/dist/src/routes/messages.d.ts +28 -0
- package/dist/src/routes/messages.d.ts.map +1 -0
- package/dist/src/routes/messages.js +295 -0
- package/dist/src/routes/messages.js.map +1 -0
- package/dist/src/routes/organisms.d.ts +2 -0
- package/dist/src/routes/organisms.d.ts.map +1 -1
- package/dist/src/routes/organisms.js +89 -0
- package/dist/src/routes/organisms.js.map +1 -1
- package/dist/src/routes/portal.d.ts.map +1 -1
- package/dist/src/routes/portal.js +20 -2
- package/dist/src/routes/portal.js.map +1 -1
- package/dist/src/routes/public-events.d.ts +20 -0
- package/dist/src/routes/public-events.d.ts.map +1 -0
- package/dist/src/routes/public-events.js +89 -0
- package/dist/src/routes/public-events.js.map +1 -0
- package/dist/src/routes/public-stats.d.ts +2 -0
- package/dist/src/routes/public-stats.d.ts.map +1 -1
- package/dist/src/routes/public-stats.js +7 -2
- package/dist/src/routes/public-stats.js.map +1 -1
- package/dist/src/routes/schedules.d.ts +7 -4
- package/dist/src/routes/schedules.d.ts.map +1 -1
- package/dist/src/routes/schedules.js +31 -5
- package/dist/src/routes/schedules.js.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.d.ts.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.js +12 -0
- package/dist/src/server-bootstrap/routes-loader.js.map +1 -1
- package/dist/src/server-bootstrap/service-init.d.ts.map +1 -1
- package/dist/src/server-bootstrap/service-init.js +2 -1
- package/dist/src/server-bootstrap/service-init.js.map +1 -1
- package/dist/src/services/attachment-duplication.d.ts +45 -0
- package/dist/src/services/attachment-duplication.d.ts.map +1 -0
- package/dist/src/services/attachment-duplication.js +173 -0
- package/dist/src/services/attachment-duplication.js.map +1 -0
- package/dist/src/services/capability-invoke.d.ts +3 -1
- package/dist/src/services/capability-invoke.d.ts.map +1 -1
- package/dist/src/services/capability-invoke.js +26 -0
- package/dist/src/services/capability-invoke.js.map +1 -1
- package/dist/src/services/connect-tunnel.d.ts +44 -16
- package/dist/src/services/connect-tunnel.d.ts.map +1 -1
- package/dist/src/services/connect-tunnel.js +95 -47
- package/dist/src/services/connect-tunnel.js.map +1 -1
- package/dist/src/services/ecosystem-access.d.ts +21 -0
- package/dist/src/services/ecosystem-access.d.ts.map +1 -0
- package/dist/src/services/ecosystem-access.js +19 -0
- package/dist/src/services/ecosystem-access.js.map +1 -0
- package/dist/src/services/ecosystem-automation-advisories.d.ts +99 -0
- package/dist/src/services/ecosystem-automation-advisories.d.ts.map +1 -0
- package/dist/src/services/ecosystem-automation-advisories.js +155 -0
- package/dist/src/services/ecosystem-automation-advisories.js.map +1 -0
- package/dist/src/services/ecosystem-automation-notify.d.ts +44 -0
- package/dist/src/services/ecosystem-automation-notify.d.ts.map +1 -0
- package/dist/src/services/ecosystem-automation-notify.js +202 -0
- package/dist/src/services/ecosystem-automation-notify.js.map +1 -0
- package/dist/src/services/ecosystem-automation.d.ts +41 -0
- package/dist/src/services/ecosystem-automation.d.ts.map +1 -0
- package/dist/src/services/ecosystem-automation.js +174 -0
- package/dist/src/services/ecosystem-automation.js.map +1 -0
- package/dist/src/services/ecosystem-events.d.ts +34 -0
- package/dist/src/services/ecosystem-events.d.ts.map +1 -0
- package/dist/src/services/ecosystem-events.js +138 -0
- package/dist/src/services/ecosystem-events.js.map +1 -0
- package/dist/src/services/email.d.ts +4 -0
- package/dist/src/services/email.d.ts.map +1 -1
- package/dist/src/services/email.js +10 -0
- package/dist/src/services/email.js.map +1 -1
- package/dist/src/services/event-bus.d.ts +17 -0
- package/dist/src/services/event-bus.d.ts.map +1 -1
- package/dist/src/services/event-bus.js +11 -0
- package/dist/src/services/event-bus.js.map +1 -1
- package/dist/src/services/manifest-schema.d.ts +5 -1
- package/dist/src/services/manifest-schema.d.ts.map +1 -1
- package/dist/src/services/manifest-schema.js +2 -1
- package/dist/src/services/manifest-schema.js.map +1 -1
- package/dist/src/services/message-delivery.d.ts +39 -0
- package/dist/src/services/message-delivery.d.ts.map +1 -0
- package/dist/src/services/message-delivery.js +145 -0
- package/dist/src/services/message-delivery.js.map +1 -0
- package/dist/src/services/offer-prereqs.d.ts +69 -0
- package/dist/src/services/offer-prereqs.d.ts.map +1 -0
- package/dist/src/services/offer-prereqs.js +92 -0
- package/dist/src/services/offer-prereqs.js.map +1 -0
- package/dist/src/services/owner-memory.d.ts +2 -0
- package/dist/src/services/owner-memory.d.ts.map +1 -1
- package/dist/src/services/owner-memory.js +11 -1
- package/dist/src/services/owner-memory.js.map +1 -1
- package/dist/src/services/public-activity.d.ts +30 -0
- package/dist/src/services/public-activity.d.ts.map +1 -0
- package/dist/src/services/public-activity.js +106 -0
- package/dist/src/services/public-activity.js.map +1 -0
- package/dist/src/services/scheduler.d.ts +41 -1
- package/dist/src/services/scheduler.d.ts.map +1 -1
- package/dist/src/services/scheduler.js +117 -0
- package/dist/src/services/scheduler.js.map +1 -1
- package/dist/src/services/workflow/engine.d.ts +38 -0
- package/dist/src/services/workflow/engine.d.ts.map +1 -1
- package/dist/src/services/workflow/engine.js +198 -4
- package/dist/src/services/workflow/engine.js.map +1 -1
- package/dist/src/services/workflow/lifecycle.d.ts +10 -0
- package/dist/src/services/workflow/lifecycle.d.ts.map +1 -1
- package/dist/src/services/workflow/lifecycle.js +35 -0
- package/dist/src/services/workflow/lifecycle.js.map +1 -1
- package/dist/src/services/workflow/store.d.ts +1 -0
- package/dist/src/services/workflow/store.d.ts.map +1 -1
- package/dist/src/services/workflow/store.js +28 -5
- package/dist/src/services/workflow/store.js.map +1 -1
- package/dist/src/storage/interface.d.ts +288 -4
- package/dist/src/storage/interface.d.ts.map +1 -1
- package/dist/src/storage/interface.js.map +1 -1
- package/dist/src/storage/providers/mongodb/index.d.ts +77 -1
- package/dist/src/storage/providers/mongodb/index.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/index.js +532 -0
- package/dist/src/storage/providers/mongodb/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/index.d.ts +61 -1
- package/dist/src/storage/providers/sqlite/index.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/index.js +105 -0
- package/dist/src/storage/providers/sqlite/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/agent-task.d.ts +1 -0
- package/dist/src/storage/providers/sqlite/repos/agent-task.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/agent-task.js +8 -4
- package/dist/src/storage/providers/sqlite/repos/agent-task.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/direct-message.d.ts +56 -0
- package/dist/src/storage/providers/sqlite/repos/direct-message.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/repos/direct-message.js +182 -0
- package/dist/src/storage/providers/sqlite/repos/direct-message.js.map +1 -0
- package/dist/src/storage/providers/sqlite/repos/ecosystem-app.d.ts +37 -0
- package/dist/src/storage/providers/sqlite/repos/ecosystem-app.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/repos/ecosystem-app.js +200 -0
- package/dist/src/storage/providers/sqlite/repos/ecosystem-app.js.map +1 -0
- package/dist/src/storage/providers/sqlite/schema.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.js +124 -1
- package/dist/src/storage/providers/sqlite/schema.js.map +1 -1
- package/dist/src/storage/repositories/direct-message.repository.d.ts +66 -0
- package/dist/src/storage/repositories/direct-message.repository.d.ts.map +1 -0
- package/dist/src/storage/repositories/direct-message.repository.js +11 -0
- package/dist/src/storage/repositories/direct-message.repository.js.map +1 -0
- package/dist/src/storage/repositories/ecosystem-app.repository.d.ts +33 -0
- package/dist/src/storage/repositories/ecosystem-app.repository.d.ts.map +1 -0
- package/dist/src/storage/repositories/ecosystem-app.repository.js +2 -0
- package/dist/src/storage/repositories/ecosystem-app.repository.js.map +1 -0
- package/dist/src/storage/repositories/index.d.ts +1 -0
- package/dist/src/storage/repositories/index.d.ts.map +1 -1
- package/dist/src/utils/env-config.d.ts.map +1 -1
- package/dist/src/utils/env-config.js +12 -0
- package/dist/src/utils/env-config.js.map +1 -1
- package/dist/src/utils/gaii.d.ts +25 -3
- package/dist/src/utils/gaii.d.ts.map +1 -1
- package/dist/src/utils/gaii.js +68 -9
- package/dist/src/utils/gaii.js.map +1 -1
- package/dist/src/utils/messaging.d.ts +19 -0
- package/dist/src/utils/messaging.d.ts.map +1 -0
- package/dist/src/utils/messaging.js +0 -0
- package/dist/src/utils/messaging.js.map +1 -0
- package/dist/static/app-catalog.html +15 -4
- package/package.json +1 -1
- package/prisma/schema.postgres.prisma +120 -18
- package/prisma/schema.prisma +106 -0
package/README.md
CHANGED
|
@@ -389,6 +389,8 @@ prerequisites** to install. A small control panel starts/stops the node, shows s
|
|
|
389
389
|
it (port, federation role), connects a local AI (Ollama / LM Studio) to your account, and opens the web
|
|
390
390
|
dashboard in your browser. Your data lives in your own app-data folder and survives restarts.
|
|
391
391
|
|
|
392
|
+
**Download:** get the latest installer from the [GitHub Releases page](https://github.com/miikkij/aimeat-protocol/releases/latest). Windows installers are code-signed with a certificate provided by the [SignPath Foundation](https://signpath.org) (free code signing for open-source projects).
|
|
393
|
+
|
|
392
394
|
<p align="center">
|
|
393
395
|
<img src="assets/screenshots/aimeat-desktop.png" alt="AIMEAT Personal Node desktop app — control panel with Getting Started steps, node status (running on port 40050), and node info" width="640" />
|
|
394
396
|
</p>
|
package/dist/.env.example
CHANGED
|
@@ -273,6 +273,8 @@ AIMEAT_PORT=40050
|
|
|
273
273
|
# AIMEAT_REPLICATION_QUEUE_TTL_HOURS=72 # Max age of replication queue entries
|
|
274
274
|
# AIMEAT_MAX_CONCURRENT_SYNCS=5 # Max parallel outbound sync operations
|
|
275
275
|
# AIMEAT_FEDERATION_TIMEOUT_MS=10000 # Timeout for outbound federation HTTP requests
|
|
276
|
+
# AIMEAT_MESSAGE_RETRY_INTERVAL_MS=60000 # Retry interval for queued cross-node direct messages
|
|
277
|
+
# AIMEAT_MESSAGE_RETRY_TTL_HOURS=168 # Give up on undelivered direct messages after this (7 days)
|
|
276
278
|
# AIMEAT_GENESIS_MEMORY_CACHE=false # Cache routed genesis memory results locally
|
|
277
279
|
# AIMEAT_GENESIS_MEMORY_CACHE_TTL_HOURS=4 # Genesis memory cache TTL
|
|
278
280
|
|
|
@@ -329,6 +331,14 @@ AIMEAT_STATS_ACCESS=public # public | authenticated | operator
|
|
|
329
331
|
# WOULD be filtered are logged so you can measure impact before enforcing.
|
|
330
332
|
# AIMEAT_MCP_ENFORCE_SCOPES=true
|
|
331
333
|
|
|
334
|
+
# ── Ecosystem Applications (GEAI) ──────────────────────────────
|
|
335
|
+
# Scope bounds for ecosystem-app (GEAI) connections, parallel to the agent knobs above.
|
|
336
|
+
# Defaults lean read + deposit (ecosystem apps mostly deposit refined data into owner areas).
|
|
337
|
+
# AIMEAT_DEFAULT_ECO_SCOPES="memory:read,memory:write,knowledge:contribute,organism:read"
|
|
338
|
+
# AIMEAT_MAX_ECO_SCOPES="*"
|
|
339
|
+
# GEAI credential lifetime in seconds (default 90 days, same class as agent JWTs).
|
|
340
|
+
# AIMEAT_ECO_JWT_TTL=7776000
|
|
341
|
+
|
|
332
342
|
# ── Prometheus Metrics ─────────────────────────────────────
|
|
333
343
|
# Prometheus metrics endpoint (GET /v1/metrics)
|
|
334
344
|
AIMEAT_METRICS_ENABLED=false
|
package/dist/locales/en.json
CHANGED
|
@@ -1,4 +1,39 @@
|
|
|
1
1
|
{
|
|
2
|
+
"inbox.title": "Inbox",
|
|
3
|
+
"inbox.desc": "Direct messages with other people — on this node and across the federation.",
|
|
4
|
+
"inbox.new": "New message",
|
|
5
|
+
"inbox.to": "To",
|
|
6
|
+
"inbox.toPlaceholder": "Recipient (owner@node-id)",
|
|
7
|
+
"inbox.bodyPlaceholder": "Write a message… (Markdown supported)",
|
|
8
|
+
"inbox.send": "Send",
|
|
9
|
+
"inbox.sending": "Sending…",
|
|
10
|
+
"inbox.reply": "Reply",
|
|
11
|
+
"inbox.requests": "Requests",
|
|
12
|
+
"inbox.accept": "Accept",
|
|
13
|
+
"inbox.block": "Block",
|
|
14
|
+
"inbox.conversations": "Conversations",
|
|
15
|
+
"inbox.noConversations": "No conversations yet.",
|
|
16
|
+
"inbox.selectConversation": "Select a conversation to read it.",
|
|
17
|
+
"inbox.noThread": "No messages in this conversation yet.",
|
|
18
|
+
"inbox.empty": "Nothing here yet.",
|
|
19
|
+
"inbox.attachmentPending": "attachment pending",
|
|
20
|
+
"inbox.attachmentExpired": "attachment expired",
|
|
21
|
+
"inbox.attach": "Attach a file",
|
|
22
|
+
"inbox.today": "Today",
|
|
23
|
+
"inbox.yesterday": "Yesterday",
|
|
24
|
+
"inbox.youPrefix": "You:",
|
|
25
|
+
"inbox.acceptedToast": "Request accepted.",
|
|
26
|
+
"inbox.blockedToast": "Contact blocked.",
|
|
27
|
+
"inbox.failed": "Could not send the message.",
|
|
28
|
+
"inbox.status.queued": "queued",
|
|
29
|
+
"inbox.status.sent": "sent",
|
|
30
|
+
"inbox.status.delivered": "delivered",
|
|
31
|
+
"inbox.status.read": "read",
|
|
32
|
+
"inbox.status.failed": "failed",
|
|
33
|
+
"inbox.status.undeliverable": "undeliverable",
|
|
34
|
+
"imageDeliverable.failed": "Image failed to load",
|
|
35
|
+
"imageDeliverable.loading": "Loading image…",
|
|
36
|
+
"imageDeliverable.open": "Open full image",
|
|
2
37
|
"profile.landing.home": "Home",
|
|
3
38
|
"profile.landing.menu": "Menu",
|
|
4
39
|
"profile.tabs.workflows": "Workflows",
|
|
@@ -41,6 +76,7 @@
|
|
|
41
76
|
"profile.workflows.form.pickOffer": "offer…",
|
|
42
77
|
"profile.workflows.form.noCompatibleOffers": "This agent has no workflow-compatible offers (must publish success_signal + required_to_function + deliverable.location).",
|
|
43
78
|
"profile.workflows.form.noInput": "no input gate",
|
|
79
|
+
"profile.workflows.form.notifyOnFinish": "Send a notification when this workflow finishes (success or failure)",
|
|
44
80
|
"profile.workflows.form.llmApproved": "Allow the node LLM to evaluate llm signal leaves in this workflow",
|
|
45
81
|
"profile.workflows.form.cancel": "Cancel",
|
|
46
82
|
"profile.workflows.form.save": "Save",
|
|
@@ -388,6 +424,7 @@
|
|
|
388
424
|
},
|
|
389
425
|
"tabs": {
|
|
390
426
|
"agents": "Agents",
|
|
427
|
+
"ecosystem": "Ecosystem apps",
|
|
391
428
|
"offers": "Offers",
|
|
392
429
|
"chatSessions": "Chat Sessions",
|
|
393
430
|
"mcp": "MCP",
|
|
@@ -407,7 +444,8 @@
|
|
|
407
444
|
"email": "Email",
|
|
408
445
|
"notifications": "Notifications",
|
|
409
446
|
"organisms": "Organisms",
|
|
410
|
-
"packages": "Packages"
|
|
447
|
+
"packages": "Packages",
|
|
448
|
+
"inbox": "Inbox"
|
|
411
449
|
},
|
|
412
450
|
"offers": {
|
|
413
451
|
"title": "What can I do?",
|
|
@@ -459,6 +497,38 @@
|
|
|
459
497
|
"billHint": "Others pay {n} morsels per call; you keep it minus the marketplace fee. Your own use is free.",
|
|
460
498
|
"notCallableHint": "Not machine-callable yet — others can find it, but invoking it needs a capability binding (action_id).",
|
|
461
499
|
"openInbox": "See it in the Inbox →",
|
|
500
|
+
"needsFirst": "Needs first",
|
|
501
|
+
"recentRuns": "Recent runs",
|
|
502
|
+
"noRunsYet": "No runs yet for this offer.",
|
|
503
|
+
"blockedReason": "Can’t run yet — needs: {what}",
|
|
504
|
+
"bundleHint": "This is a step of a workflow — open it to run the whole chain:",
|
|
505
|
+
"bundleOpened": "Opening “{wf}” in Workflows…",
|
|
506
|
+
"segMap": "Map",
|
|
507
|
+
"mapTitle": "Map of what you can do",
|
|
508
|
+
"mapDesc": "A bird’s-eye map of your offers, grouped — orient here, act in the list.",
|
|
509
|
+
"mapNote": "Click a node to open its card.",
|
|
510
|
+
"groupBy": "Group",
|
|
511
|
+
"sortBy": "Sort",
|
|
512
|
+
"clearFilters": "Clear",
|
|
513
|
+
"autoSection": "⏱ Runs automatically",
|
|
514
|
+
"manualSection": "On demand",
|
|
515
|
+
"ungrouped": "Other",
|
|
516
|
+
"axis": { "need": "By need", "agent": "By agent", "auto": "By automation", "tag": "By tag", "capability": "By capability" },
|
|
517
|
+
"sort": { "standing": "Most valuable", "cost": "Cheapest", "speed": "Fastest", "name": "A–Z" },
|
|
518
|
+
"facet": { "cost": "Price", "latency": "Speed", "verification": "Trust", "dataHandling": "Privacy", "format": "Output" },
|
|
519
|
+
"format": { "document": "document", "record": "record", "board-post": "board post", "file": "file", "app": "app", "image": "image", "json": "data (JSON)" },
|
|
520
|
+
"need": { "create": "Create", "analyze": "Analyze & decide", "communicate": "Communicate & translate", "build": "Build & automate", "inspect": "Inspect & report", "other": "Other" },
|
|
521
|
+
"aiSearch": "Find by need",
|
|
522
|
+
"aiThinking": "Matching your need…",
|
|
523
|
+
"aiResultsTitle": "Best matches for your need",
|
|
524
|
+
"aiClear": "Back to browse",
|
|
525
|
+
"aiNoMatch": "No existing offer fits this need well.",
|
|
526
|
+
"aiNoKey": "Set up an OpenRouter key first (AI settings).",
|
|
527
|
+
"aiQuota": "Daily AI budget reached.",
|
|
528
|
+
"aiFailed": "Need search failed.",
|
|
529
|
+
"buildForNeed": "Build an agent for this →",
|
|
530
|
+
"buildRequested": "Asked {agent} to build an agent for this.",
|
|
531
|
+
"noBuilder": "No agent-builder available. Connect crew-forge first.",
|
|
462
532
|
"visibility": { "private": "Private (only me)", "unlisted": "Unlisted (by link)", "public": "Public (listed)" },
|
|
463
533
|
"status": { "done": "done", "failed": "failed", "active": "in progress", "paused": "paused", "stalled": "stalled", "queued": "queued", "revision_requested": "revision requested", "draft": "draft" },
|
|
464
534
|
"verification": { "deterministic": "deterministic", "gated": "verified", "ungated": "unverified" },
|
|
@@ -475,6 +545,200 @@
|
|
|
475
545
|
"delegates-to-agent": "delegates to other agents"
|
|
476
546
|
}
|
|
477
547
|
},
|
|
548
|
+
"ecosystem": {
|
|
549
|
+
"title": "Ecosystem apps",
|
|
550
|
+
"desc": "Connect external services so your agents and workflows can exchange data, capabilities, and events with them.",
|
|
551
|
+
"connect": "+ Connect app",
|
|
552
|
+
"connectNote": "This is for external services that support AIMEAT (like the Feedback Desk demo). Most people don't need to do anything here. If you use such a service, you connect it from that service's own settings — its request then appears here to approve. There's no app store for these yet; services and developers add AIMEAT support themselves.",
|
|
553
|
+
"empty": "No ecosystem apps connected yet.",
|
|
554
|
+
"loadError": "Could not load ecosystem apps.",
|
|
555
|
+
"approved": "Ecosystem app approved.",
|
|
556
|
+
"approveError": "Could not process the request.",
|
|
557
|
+
"revoked": "App removed.",
|
|
558
|
+
"revokeError": "Could not disconnect the app.",
|
|
559
|
+
"revokeReconnectHint": "This app is disconnected. Your data above stays yours. To reconnect, connect the app again from its own side — AIMEAT re-pins its identity and re-reads its settings (deposit key, capabilities) automatically.",
|
|
560
|
+
"subError": "Could not update the subscription.",
|
|
561
|
+
"pendingTitle": "Pending integration requests",
|
|
562
|
+
"pendingHint": "The app shows the same code in its own view. Check they match, then approve — you don't need to type the code anywhere.",
|
|
563
|
+
"pendingCode": "Code",
|
|
564
|
+
"waiting": "waiting",
|
|
565
|
+
"expiresIn": "expires in {n} min",
|
|
566
|
+
"grantLevel": "Grant level",
|
|
567
|
+
"presetStandard": "Standard",
|
|
568
|
+
"presetReadonly": "Read-only",
|
|
569
|
+
"presetFull": "Full",
|
|
570
|
+
"approve": "Approve",
|
|
571
|
+
"deny": "Deny",
|
|
572
|
+
"connectedAsYou": "connected as you ({owner})",
|
|
573
|
+
"appValueLine": "This app collects your data and refines it into insights you can use anywhere.",
|
|
574
|
+
"techDetailsTitle": "Technical details",
|
|
575
|
+
"techDetailsHint": "Under-the-hood settings. You don't need these to use the app — they're here if you want to check or fine-tune the connection.",
|
|
576
|
+
"principalTitle": "App identity",
|
|
577
|
+
"accessPlain": "Access: everything you granted when you approved this app.",
|
|
578
|
+
"disconnectTitle": "Disconnect",
|
|
579
|
+
"disconnectHint": "Stop this app from exchanging data with your account. You can always reconnect it later.",
|
|
580
|
+
"disconnect": "Disconnect this app",
|
|
581
|
+
"grants": "Grants",
|
|
582
|
+
"subscriptions": "Event subscriptions",
|
|
583
|
+
"subscriptionsDirection": "AIMEAT → this app: events AIMEAT delivers to this app when they happen in your account.",
|
|
584
|
+
"noSubs": "No outbound event subscriptions.",
|
|
585
|
+
"removeSub": "Remove",
|
|
586
|
+
"addSub": "Subscribe",
|
|
587
|
+
"binding": "Binding",
|
|
588
|
+
"aimeatSide": "AIMEAT side",
|
|
589
|
+
"appOrigin": "App",
|
|
590
|
+
"keyFp": "Key fingerprint",
|
|
591
|
+
"bindingNote": "This binding only records who corresponds to whom. Neither system grants the other's permissions.",
|
|
592
|
+
"dataTitle": "Data this app wrote",
|
|
593
|
+
"dataLoading": "Loading data…",
|
|
594
|
+
"dataEmpty": "No data written yet.",
|
|
595
|
+
"dataExpand": "Show full value",
|
|
596
|
+
"dataCollapse": "Hide value",
|
|
597
|
+
"automationTitle": "Automation",
|
|
598
|
+
"automationIntro": "Get fresh results on a schedule — AIMEAT runs the app for you; the app does the work.",
|
|
599
|
+
"automationCadence_daily": "Daily, 08:00",
|
|
600
|
+
"automationCadence_weekly": "Weekly, Mondays 08:00",
|
|
601
|
+
"automationCadence_monthly": "Monthly, 1st 08:00",
|
|
602
|
+
"automationEnable": "Enable",
|
|
603
|
+
"automationDisable": "Disable",
|
|
604
|
+
"automationRunNow": "Run now",
|
|
605
|
+
"automationDelete": "Delete schedule",
|
|
606
|
+
"automationEmpty": "No automation yet.",
|
|
607
|
+
"automationNoCaps": "This app doesn't have anything to automate yet.",
|
|
608
|
+
"automationLoading": "Loading schedules…",
|
|
609
|
+
"automationLastRun": "Last run",
|
|
610
|
+
"automationNextRun": "Next run",
|
|
611
|
+
"automationOn": "enabled",
|
|
612
|
+
"automationPaused": "paused",
|
|
613
|
+
"automationCreated": "Schedule created.",
|
|
614
|
+
"automationTriggered": "Triggered — running now.",
|
|
615
|
+
"automationError": "Automation request failed.",
|
|
616
|
+
"automationRunOk": "Ran now — done.",
|
|
617
|
+
"automationRunSkipped": "Skipped — {reason}.",
|
|
618
|
+
"automationRunSkippedOffline": "Skipped — the app isn't reachable over the connector tunnel. Start `aimeat connect serve` for this app, then try again.",
|
|
619
|
+
"automationRunFailed": "Run failed — {reason}.",
|
|
620
|
+
"automationShowLog": "Show log",
|
|
621
|
+
"automationHideLog": "Hide log",
|
|
622
|
+
"automationLogEmpty": "No runs yet.",
|
|
623
|
+
"automationLogLoading": "Loading run history…",
|
|
624
|
+
"automationRunResult_success": "success",
|
|
625
|
+
"automationRunResult_error": "error",
|
|
626
|
+
"automationRunResult_skipped": "skipped",
|
|
627
|
+
"automationDuration": "{ms}ms",
|
|
628
|
+
"autoIntro": "Set it up once → your data refines itself: the app publishes → your agent analyses it → results land where you want them. No clicking required after this.",
|
|
629
|
+
"autoRevoked": "This app is disconnected, so automation is unavailable.",
|
|
630
|
+
"autoHowTitle": "How this works",
|
|
631
|
+
"autoHowLead": "The app and your agents never talk directly — AIMEAT sits in between. It runs top to bottom:",
|
|
632
|
+
"autoHowStep1": "The app publishes fresh data on a schedule.",
|
|
633
|
+
"autoHowStep2": "AIMEAT spots that data and hands it to your agent.",
|
|
634
|
+
"autoHowStep3": "Your agent does the work and writes its insights back.",
|
|
635
|
+
"autoHowStep4": "You get the finished insights — delivered to the app and reachable everywhere.",
|
|
636
|
+
"autoHowDoc": "Full walkthrough: docs/ecosystem-app-automation-howto.md.",
|
|
637
|
+
"autoStep1": "① What this app produces",
|
|
638
|
+
"autoStep2": "② Run on a schedule",
|
|
639
|
+
"autoStep3": "③ Process with agent(s)",
|
|
640
|
+
"autoStep4": "④ Store results in organism",
|
|
641
|
+
"autoStep5": "⑤ Deliver guidance",
|
|
642
|
+
"autoProduces": "produces",
|
|
643
|
+
"autoDepositKey": "deposits under",
|
|
644
|
+
"autoScheduleOn": "Run automatically on this schedule",
|
|
645
|
+
"autoAdvanced": "Advanced — trigger key",
|
|
646
|
+
"autoSave": "Save automation",
|
|
647
|
+
"autoSaved": "Automation saved.",
|
|
648
|
+
"autoSaveError": "Could not save the automation.",
|
|
649
|
+
"autoStatusTitle": "Status — latest run",
|
|
650
|
+
"autoStatusPublished": "Published",
|
|
651
|
+
"autoStatusProcessed": "Processed",
|
|
652
|
+
"autoStatusDelivered": "Delivered",
|
|
653
|
+
"autoStatusNotScheduled": "not scheduled",
|
|
654
|
+
"autoStatusPublishedHint": "Turn on \"Run on a schedule\" above and save to start publishing this app's data.",
|
|
655
|
+
"autoStatusProcessedHint": "Your agents run automatically whenever this app publishes matching data.",
|
|
656
|
+
"autoStatusNoAgents": "No agents selected yet — pick one in step ③ above.",
|
|
657
|
+
"autoStatusDeliveredHint": "Approved guidance is delivered to the app and appears in its Guidance.",
|
|
658
|
+
"setupGuideTitle": "How to set this up",
|
|
659
|
+
"setupGuideMissing": "This app didn't include a setup guide — re-connect it to load one, or see the app's own docs.",
|
|
660
|
+
"askClaudeTitle": "Ask your results in Claude",
|
|
661
|
+
"setupTitle": "Get started",
|
|
662
|
+
"setupLead": "A few quick steps and this app starts working for you: your insights become reachable from any AI chat (Claude, Grok, ChatGPT), your own agent does the thinking, and results stay yours to reuse anywhere.",
|
|
663
|
+
"setupLoading": "Loading status…",
|
|
664
|
+
"setupProgress": "{done}/{total} done",
|
|
665
|
+
"setupStep1Title": "App connected",
|
|
666
|
+
"setupStep1Why": "Done — this app is linked to your account and ready to go.",
|
|
667
|
+
"setupStep2Title": "Get recommendations from your data",
|
|
668
|
+
"setupStep2Why": "Connect your own agent (e.g. Claude with your key) and it turns this app's data into recommendations. It's YOUR agent, not the app's — the app only suggests a ready prompt to start from.",
|
|
669
|
+
"setupStep2Cta": "Connect an agent",
|
|
670
|
+
"setupStep2NoAgents": "You have no agents yet — connect one first, then return here.",
|
|
671
|
+
"setupStep3Title": "Let it run by itself",
|
|
672
|
+
"setupStep3Why": "Turn on automation and your agent runs the moment new data arrives — you get fresh insights without lifting a finger.",
|
|
673
|
+
"setupStep3Cta": "Set up automation",
|
|
674
|
+
"setupStep4Title": "Get your insights everywhere",
|
|
675
|
+
"setupStep4Why": "Pick an organism and your results show up in Claude / Grok / ChatGPT, ready to reuse for marketing or reports and to share with your team — not locked inside this one app.",
|
|
676
|
+
"setupStep4Cta": "Pick an organism",
|
|
677
|
+
"mcpTitle": "Ask your insights in Claude, Grok, or ChatGPT",
|
|
678
|
+
"mcpSub": "Connect AIMEAT to your AI chat once → then just ask, and get answers, exploration, save and follow-up — straight from everything this app and your agent produce.",
|
|
679
|
+
"mcpConnect": "If you haven't yet: add aimeat.io as an MCP connector in your AI chat's settings. See the how-to (docs/ecosystem-app-automation-howto.md) for the connect steps.",
|
|
680
|
+
"mcpSampleLabel": "Sample query to try:",
|
|
681
|
+
"mcpSamplePromptOrg": "Open my '{organism}' organism, read the latest feedback analysis my agent saved there, and summarise the top issues and trends. Then add your follow-up notes to the same organism so I can track whether they improve.",
|
|
682
|
+
"mcpNoOrganism": "Pick an organism first (step ④ below) — that's where your agent saves its insights, and where you can ask for them in your AI chat. Until then there's no shared place to read.",
|
|
683
|
+
"mcpAccessNote": "This works when you're connected to AIMEAT MCP as yourself (the owner), or your chat agent is a member of that organism — the insight lives in the organism, not in private memory.",
|
|
684
|
+
"recipeTitle": "When this app publishes data",
|
|
685
|
+
"recipeIntro": "Build an automatic recipe: when this app publishes new data, hand it to your agents, optionally store the results in an organism and email you the report.",
|
|
686
|
+
"recipeLoading": "Loading recipe…",
|
|
687
|
+
"recipeTriggerOn": "Triggers on",
|
|
688
|
+
"recipeTriggerLabel": "Trigger key pattern",
|
|
689
|
+
"recipeTriggerHelp": "Automation runs when this app writes a memory key matching this pattern (e.g. feedback.stats.*).",
|
|
690
|
+
"recipeAgents": "Process with agents",
|
|
691
|
+
"recipeAgentsEmpty": "You have no agents yet. Connect an agent first, then return here.",
|
|
692
|
+
"recommendedChip": "★ Recommended",
|
|
693
|
+
"showAllAgents": "Show all agents ({n})",
|
|
694
|
+
"hideAllAgents": "Hide other agents",
|
|
695
|
+
"recommendedMissing": "This app recommends an agent: {name} — {why}. You haven't connected it yet (see the setup guide above).",
|
|
696
|
+
"recipeOrganism": "Store results in organism",
|
|
697
|
+
"recipeOrganismNone": "None",
|
|
698
|
+
"recipeEmail": "Email me the report",
|
|
699
|
+
"recipeDelivery": "Guidance delivery",
|
|
700
|
+
"recipeDeliveryApprove": "Approve first",
|
|
701
|
+
"recipeDeliveryApproveHint": "You review the agents' guidance before it reaches the app.",
|
|
702
|
+
"recipeDeliveryPush": "Push to the app",
|
|
703
|
+
"recipeDeliveryPushHint": "Guidance is delivered to the app automatically.",
|
|
704
|
+
"recipeEnabled": "Recipe enabled",
|
|
705
|
+
"recipeSave": "Save recipe",
|
|
706
|
+
"recipeSaved": "Recipe saved.",
|
|
707
|
+
"recipeDeferredNote": "Organism storage, email and the approval step are saved now and take effect as those steps roll out.",
|
|
708
|
+
"recipeError": "Could not save the recipe.",
|
|
709
|
+
"advPendingTitle": "Pending advisories",
|
|
710
|
+
"advPendingIntro": "Advisories your agents produced from this app's data, waiting for your approval before they are delivered to the app.",
|
|
711
|
+
"advPendingEmpty": "No advisories awaiting approval.",
|
|
712
|
+
"advApprove": "Approve",
|
|
713
|
+
"advReject": "Reject",
|
|
714
|
+
"advRejectConfirm": "Reject this advisory? It will be dropped and not delivered.",
|
|
715
|
+
"advDelivered": "Advisory delivered to {app}.",
|
|
716
|
+
"advOfflineRetry": "{app} is offline — the advisory stays pending and will be retried.",
|
|
717
|
+
"advFailed": "Delivery failed — the advisory stays pending. You can retry later.",
|
|
718
|
+
"advRejected": "Advisory rejected.",
|
|
719
|
+
"advError": "Could not process the advisory.",
|
|
720
|
+
"advKind": "Kind",
|
|
721
|
+
"advSeverity": "Severity",
|
|
722
|
+
"advEffective": "Effective",
|
|
723
|
+
"advSource": "Source",
|
|
724
|
+
"advRationale": "Rationale",
|
|
725
|
+
"advLoading": "Loading advisories…",
|
|
726
|
+
"revoke": "Disconnect",
|
|
727
|
+
"revokeTitle": "Disconnect: {app}",
|
|
728
|
+
"revokeWarn": "This removes the app from your list entirely. Your data stays in your Memory. You can reconnect it later from the app's own side — it will start over from scratch then. Type the app name ({app}) to confirm.",
|
|
729
|
+
"validation": {
|
|
730
|
+
"validated": "validated",
|
|
731
|
+
"failed": "validation failed",
|
|
732
|
+
"none": ""
|
|
733
|
+
},
|
|
734
|
+
"status": {
|
|
735
|
+
"active": "online",
|
|
736
|
+
"approved": "approved",
|
|
737
|
+
"pending": "pending",
|
|
738
|
+
"validating": "validating",
|
|
739
|
+
"revoked": "disconnected"
|
|
740
|
+
}
|
|
741
|
+
},
|
|
478
742
|
"agents": {
|
|
479
743
|
"title": "Your Agents",
|
|
480
744
|
"active": {
|
|
@@ -5663,6 +5927,8 @@
|
|
|
5663
5927
|
"draft": "draft",
|
|
5664
5928
|
"publish": "Publish",
|
|
5665
5929
|
"published": "Published",
|
|
5930
|
+
"reopened": "Reopened for editing",
|
|
5931
|
+
"reopenEditHint": "Reopen for editing — creates an editable draft from the published version",
|
|
5666
5932
|
"draftVersion": "Draft",
|
|
5667
5933
|
"publishedVersion": "Published",
|
|
5668
5934
|
"workspacesDesc": "Workspaces in this organism — each is an independent space with its own documents, records and history.",
|
|
@@ -5824,7 +6090,11 @@
|
|
|
5824
6090
|
"gateToggled": "Publish gate updated",
|
|
5825
6091
|
"share": "Share",
|
|
5826
6092
|
"sharePublicTitle": "Public sharing",
|
|
5827
|
-
"sharePublicDesc": "Make published document-space pages readable by anyone with the link — no login required. Drafts are never shared.",
|
|
6093
|
+
"sharePublicDesc": "Make published document-space pages readable by anyone with the link — no login required. Drafts are never shared. Anything you make public is also announced on the public activity feed on the front page.",
|
|
6094
|
+
"feedPublishBtn": "📣 Publish to public feed",
|
|
6095
|
+
"feedPublishedAll": "📣 This whole workspace is published to the public feed.",
|
|
6096
|
+
"feedPublishConfirm": "Publish every published document in this workspace to the public activity feed on the front page?",
|
|
6097
|
+
"feedUnpublish": "Unpublish",
|
|
5828
6098
|
"noDocSpaces": "This workspace has no document spaces to share.",
|
|
5829
6099
|
"noPublishedDocs": "No published documents yet — publish a page to share it.",
|
|
5830
6100
|
"openLink": "open ↗",
|
|
@@ -5908,6 +6178,16 @@
|
|
|
5908
6178
|
"tabReview": "Review",
|
|
5909
6179
|
"tabPeople": "People",
|
|
5910
6180
|
"tabOverview": "Overview",
|
|
6181
|
+
"groupRelated": "Workspace",
|
|
6182
|
+
"groupRecords": "Records",
|
|
6183
|
+
"groupRecordsDesc": "Structured, schema-validated items tracked in this workspace.",
|
|
6184
|
+
"groupDocs": "Document spaces",
|
|
6185
|
+
"groupDocsDesc": "Free-form markdown pages and wikis.",
|
|
6186
|
+
"groupContractDesc": "Spaces provided by the {id} contract — they work together as one unit.",
|
|
6187
|
+
"descOverview": "Everything in this workspace on one scroll, plus what changed recently.",
|
|
6188
|
+
"descActivity": "Who did what, and when — the workspace's activity heatmap and event log.",
|
|
6189
|
+
"descSources": "References this workspace draws on — memory entries, files, and knowledge packages. Pointers only; nothing is copied.",
|
|
6190
|
+
"descReview": "Gated publishes waiting for a human decision before they go live.",
|
|
5911
6191
|
"ovRecent": "What happened here",
|
|
5912
6192
|
"ovShowAll": "Show all {n} →",
|
|
5913
6193
|
"unseenHint": "Changed since your last visit",
|
|
@@ -6608,6 +6888,10 @@
|
|
|
6608
6888
|
"landing": {
|
|
6609
6889
|
"heroTitle": "Your AI gets memory, agents and a place to build.",
|
|
6610
6890
|
"heroSub": "Open protocol. Run your own node or use ours.",
|
|
6891
|
+
"askAiTitle": "Let your own AI tell you what AIMEAT is — for you",
|
|
6892
|
+
"askAiSub": "Paste this into Claude, ChatGPT or any AI. It asks a couple of questions about you, then explains what AIMEAT means for your situation — and what it won’t solve.",
|
|
6893
|
+
"askAiCopy": "Copy prompt",
|
|
6894
|
+
"askAiCopied": "Copied ✓",
|
|
6611
6895
|
"tickerTitle": "Live activity on this node",
|
|
6612
6896
|
"tickerFallback": "Agents on this node write, schedule and publish around the clock.",
|
|
6613
6897
|
"published": "published",
|
|
@@ -6651,7 +6935,29 @@
|
|
|
6651
6935
|
"twoPlayers": "2 players",
|
|
6652
6936
|
"gallerySolar": "Simulate the solar system.",
|
|
6653
6937
|
"galleryGraph": "Plot 3D math functions in the browser.",
|
|
6654
|
-
"galleryBandJam": "Make music with your friends, live!"
|
|
6938
|
+
"galleryBandJam": "Make music with your friends, live!",
|
|
6939
|
+
"buildTitle": "Build your app in 10 minutes — copy this prompt",
|
|
6940
|
+
"buildSub": "Paste into Claude, ChatGPT or any AI. It asks about your idea, builds the app and publishes it to your node. Share the link when done.",
|
|
6941
|
+
"buildCopy": "Copy prompt",
|
|
6942
|
+
"buildCopied": "Copied ✓",
|
|
6943
|
+
"feedTitle": "Happening on this node",
|
|
6944
|
+
"feedSub": "Public apps, organisms and agent materials as they are published. Click a row for details.",
|
|
6945
|
+
"feedTabApps": "Apps",
|
|
6946
|
+
"feedTabOrganisms": "Organisms",
|
|
6947
|
+
"feedTabAgents": "Agents",
|
|
6948
|
+
"feedOpen": "Open →",
|
|
6949
|
+
"feedLoading": "Loading…",
|
|
6950
|
+
"feedEmpty": "Nothing here yet — be the first to publish something public.",
|
|
6951
|
+
"heroKicker": "Tonight’s paper wrote itself.",
|
|
6952
|
+
"heroLead": "Six agents. Zero human hours.",
|
|
6953
|
+
"heroOpenPaper": "Open tonight’s paper",
|
|
6954
|
+
"heroShotAlt": "AIMEAT Sanomat — tonight’s edition",
|
|
6955
|
+
"heroPaperLine": "Tonight’s edition · written entirely by agents",
|
|
6956
|
+
"heroSub2": "A real app, built and run by AI on AIMEAT — look before you sign up.",
|
|
6957
|
+
"heroTryFree": "Try it free →",
|
|
6958
|
+
"heroGetOwn": "Get your own →",
|
|
6959
|
+
"agentBuildTitle": "Build an agent in 10 minutes — copy this prompt",
|
|
6960
|
+
"agentBuildSub": "Paste into Claude, ChatGPT or any AI. It builds a local AI agent — running on your own machine, no API keys — connected to your node, and shows you how to share it. For coders and tinkerers; beginners can use the desktop app instead."
|
|
6655
6961
|
},
|
|
6656
6962
|
"pricing": {
|
|
6657
6963
|
"title": "Pricing",
|
|
@@ -6831,7 +7137,8 @@
|
|
|
6831
7137
|
"cursorLink": "Open the connect page →",
|
|
6832
7138
|
"other": "If your tool supports Connectors / custom MCP, paste this address into it:",
|
|
6833
7139
|
"otherNote": "No MCP support? AIMEAT also works prompt-driven: the app composes the prompts, you carry them to your chat and bring the answers back. Free, and works with any AI.",
|
|
6834
|
-
"approve": "When the AI asks for access, approve the agent in your profile and pick its permissions. No agent is ever created without your approval."
|
|
7140
|
+
"approve": "When the AI asks for access, approve the agent in your profile and pick its permissions. No agent is ever created without your approval.",
|
|
7141
|
+
"localhost": "Running AIMEAT on your own machine (localhost)? A cloud AI like claude.ai can't reach a localhost address over MCP. Install the connector and run `aimeat connect serve` — it bridges your local node to the AI."
|
|
6835
7142
|
},
|
|
6836
7143
|
"s3": {
|
|
6837
7144
|
"title": "Step 3: Put your AI to work",
|