@undefineds.co/xpod 0.2.0-preview.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/README.md +24 -2
  2. package/dist/agents/AgentExecutorFactory.js +1 -1
  3. package/dist/agents/AgentExecutorFactory.js.map +1 -1
  4. package/dist/agents/AgentManager.js +1 -1
  5. package/dist/agents/AgentManager.js.map +1 -1
  6. package/dist/agents/config/agent-meta-schema.d.ts +7 -7
  7. package/dist/agents/config/agent-meta-schema.js +1 -1
  8. package/dist/agents/config/agent-meta-schema.js.map +1 -1
  9. package/dist/agents/config/resolve.js +1 -1
  10. package/dist/agents/config/resolve.js.map +1 -1
  11. package/dist/agents/schema/agent-config.d.ts +18 -18
  12. package/dist/agents/schema/agent-config.js +1 -1
  13. package/dist/agents/schema/agent-config.js.map +1 -1
  14. package/dist/agents/schema/tables.d.ts +8 -8
  15. package/dist/agents/schema/tables.js +1 -1
  16. package/dist/agents/schema/tables.js.map +1 -1
  17. package/dist/ai/schema/config.d.ts +7 -7
  18. package/dist/ai/schema/config.js +1 -1
  19. package/dist/ai/schema/config.js.map +1 -1
  20. package/dist/ai/schema/model.d.ts +13 -13
  21. package/dist/ai/schema/model.js +1 -1
  22. package/dist/ai/schema/model.js.map +1 -1
  23. package/dist/ai/schema/provider.d.ts +7 -7
  24. package/dist/ai/schema/provider.js +1 -1
  25. package/dist/ai/schema/provider.js.map +1 -1
  26. package/dist/ai/schema/vector-store.d.ts +17 -17
  27. package/dist/ai/schema/vector-store.js +1 -1
  28. package/dist/ai/schema/vector-store.js.map +1 -1
  29. package/dist/ai/service/CredentialReaderImpl.js +1 -1
  30. package/dist/ai/service/CredentialReaderImpl.js.map +1 -1
  31. package/dist/ai/service/DefaultAiConfigService.js.map +1 -1
  32. package/dist/api/ApiServer.d.ts +3 -1
  33. package/dist/api/ApiServer.js +14 -1
  34. package/dist/api/ApiServer.js.map +1 -1
  35. package/dist/api/chatkit/pod-store.d.ts +6 -0
  36. package/dist/api/chatkit/pod-store.js +86 -35
  37. package/dist/api/chatkit/pod-store.js.map +1 -1
  38. package/dist/api/chatkit/schema.d.ts +29 -29
  39. package/dist/api/chatkit/schema.js +4 -4
  40. package/dist/api/chatkit/schema.js.map +1 -1
  41. package/dist/api/container/common.js +1 -0
  42. package/dist/api/container/common.js.map +1 -1
  43. package/dist/api/runtime.js +21 -0
  44. package/dist/api/runtime.js.map +1 -1
  45. package/dist/api/service/VectorStoreService.js +1 -1
  46. package/dist/api/service/VectorStoreService.js.map +1 -1
  47. package/dist/cli/lib/pod-thread-store.js +1 -1
  48. package/dist/cli/lib/pod-thread-store.js.map +1 -1
  49. package/dist/credential/schema/tables.d.ts +14 -14
  50. package/dist/credential/schema/tables.js +1 -1
  51. package/dist/credential/schema/tables.js.map +1 -1
  52. package/dist/identity/drizzle/ServiceTokenRepository.js +9 -10
  53. package/dist/identity/drizzle/ServiceTokenRepository.js.map +1 -1
  54. package/dist/identity/drizzle/db.js +27 -2
  55. package/dist/identity/drizzle/db.js.map +1 -1
  56. package/dist/identity/drizzle/schema.pg.js +16 -16
  57. package/dist/identity/drizzle/schema.pg.js.map +1 -1
  58. package/dist/task/DrizzleTaskQueue.d.ts +1 -1
  59. package/dist/task/DrizzleTaskQueue.js +1 -1
  60. package/dist/task/DrizzleTaskQueue.js.map +1 -1
  61. package/dist/task/schema.d.ts +10 -10
  62. package/dist/task/schema.js +1 -1
  63. package/dist/task/schema.js.map +1 -1
  64. package/package.json +20 -10
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/task/schema.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;AAqDH,4CAGC;AAKD,gDAGC;AA9DD,iDAAiE;AACjE,oCAAgD;AAEhD;;GAEG;AACU,QAAA,UAAU,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;CACR,CAAC;AAIX;;;;;;;;;;;GAWG;AACU,QAAA,IAAI,GAAG,IAAA,wBAAQ,EAC1B,MAAM,EACN;IACE,EAAE,EAAE,IAAA,sBAAM,EAAC,IAAI,CAAC,CAAC,UAAU,EAAE;IAC7B,KAAK,EAAE,IAAA,sBAAM,EAAC,OAAO,CAAC;IACtB,OAAO,EAAE,IAAA,sBAAM,EAAC,SAAS,CAAC;IAC1B,MAAM,EAAE,IAAA,sBAAM,EAAC,QAAQ,CAAC;IACxB,SAAS,EAAE,IAAA,wBAAQ,EAAC,WAAW,CAAC;IAChC,SAAS,EAAE,IAAA,wBAAQ,EAAC,WAAW,CAAC;IAChC,WAAW,EAAE,IAAA,wBAAQ,EAAC,aAAa,CAAC;IACpC,MAAM,EAAE,IAAA,oBAAI,EAAC,QAAQ,CAAC;IACtB,KAAK,EAAE,IAAA,sBAAM,EAAC,OAAO,CAAC;CACvB,EACD;IACE,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,YAAI,CAAC,IAAI;IACf,SAAS,EAAE,sBAAc;IACzB,eAAe,EAAE,OAAO;CACzB,CACF,CAAC;AAEF;;GAEG;AACH,SAAgB,gBAAgB;IAC9B,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,OAAO,UAAU,KAAK,MAAM,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,IAAU;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,OAAO,UAAU,OAAO,MAAM,CAAC;AACjC,CAAC","sourcesContent":["/**\n * Task Schema - Pod RDF 表定义\n *\n * 简化模型:消息 + Agent\n *\n * 任务系统只负责:\n * - 接收任务 (agent + message)\n * - 调度执行\n * - 记录状态\n *\n * 具体怎么处理、用什么工具、做到什么程度,全部由 Agent 自己决定。\n */\n\nimport { podTable, string, datetime, json } from 'drizzle-solid';\nimport { UDFS, UDFS_NAMESPACE } from '../vocab';\n\n/**\n * 任务状态\n */\nexport const TaskStatus = {\n PENDING: 'pending',\n RUNNING: 'running',\n COMPLETED: 'completed',\n FAILED: 'failed',\n} as const;\n\nexport type TaskStatusType = (typeof TaskStatus)[keyof typeof TaskStatus];\n\n/**\n * Task - 任务实例\n *\n * 存储位置: /tasks/{YYYY-MM-DD}.ttl (按天分片)\n *\n * RDF 示例:\n * <#task-abc123> a udfs:Task ;\n * udfs:agent \"indexing\" ;\n * udfs:message \"用户在 </docs/> 上传了文件 </docs/report.pdf>\" ;\n * udfs:status \"pending\" ;\n * udfs:createdAt \"2026-01-09T10:00:00Z\"^^xsd:dateTime .\n */\nexport const Task = podTable(\n 'Task',\n {\n id: string('id').primaryKey(),\n agent: string('agent'),\n message: string('message'),\n status: string('status'),\n createdAt: datetime('createdAt'),\n startedAt: datetime('startedAt'),\n completedAt: datetime('completedAt'),\n result: json('result'),\n error: string('error'),\n },\n {\n base: '/tasks/',\n type: UDFS.Task,\n namespace: UDFS_NAMESPACE,\n subjectTemplate: '#{id}',\n },\n);\n\n/**\n * 获取今天的任务文件路径\n */\nexport function getTodayTaskPath(): string {\n const today = new Date().toISOString().split('T')[0];\n return `/tasks/${today}.ttl`;\n}\n\n/**\n * 获取指定日期的任务文件路径\n */\nexport function getTaskPathForDate(date: Date): string {\n const dateStr = date.toISOString().split('T')[0];\n return `/tasks/${dateStr}.ttl`;\n}\n\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/task/schema.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;AAqDH,4CAGC;AAKD,gDAGC;AA9DD,gEAAgF;AAChF,oCAAgD;AAEhD;;GAEG;AACU,QAAA,UAAU,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;CACR,CAAC;AAIX;;;;;;;;;;;GAWG;AACU,QAAA,IAAI,GAAG,IAAA,wBAAQ,EAC1B,MAAM,EACN;IACE,EAAE,EAAE,IAAA,sBAAM,EAAC,IAAI,CAAC,CAAC,UAAU,EAAE;IAC7B,KAAK,EAAE,IAAA,sBAAM,EAAC,OAAO,CAAC;IACtB,OAAO,EAAE,IAAA,sBAAM,EAAC,SAAS,CAAC;IAC1B,MAAM,EAAE,IAAA,sBAAM,EAAC,QAAQ,CAAC;IACxB,SAAS,EAAE,IAAA,wBAAQ,EAAC,WAAW,CAAC;IAChC,SAAS,EAAE,IAAA,wBAAQ,EAAC,WAAW,CAAC;IAChC,WAAW,EAAE,IAAA,wBAAQ,EAAC,aAAa,CAAC;IACpC,MAAM,EAAE,IAAA,oBAAI,EAAC,QAAQ,CAAC;IACtB,KAAK,EAAE,IAAA,sBAAM,EAAC,OAAO,CAAC;CACvB,EACD;IACE,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,YAAI,CAAC,IAAI;IACf,SAAS,EAAE,sBAAc;IACzB,eAAe,EAAE,OAAO;CACzB,CACF,CAAC;AAEF;;GAEG;AACH,SAAgB,gBAAgB;IAC9B,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,OAAO,UAAU,KAAK,MAAM,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,IAAU;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,OAAO,UAAU,OAAO,MAAM,CAAC;AACjC,CAAC","sourcesContent":["/**\n * Task Schema - Pod RDF 表定义\n *\n * 简化模型:消息 + Agent\n *\n * 任务系统只负责:\n * - 接收任务 (agent + message)\n * - 调度执行\n * - 记录状态\n *\n * 具体怎么处理、用什么工具、做到什么程度,全部由 Agent 自己决定。\n */\n\nimport { podTable, string, datetime, json } from '@undefineds.co/drizzle-solid';\nimport { UDFS, UDFS_NAMESPACE } from '../vocab';\n\n/**\n * 任务状态\n */\nexport const TaskStatus = {\n PENDING: 'pending',\n RUNNING: 'running',\n COMPLETED: 'completed',\n FAILED: 'failed',\n} as const;\n\nexport type TaskStatusType = (typeof TaskStatus)[keyof typeof TaskStatus];\n\n/**\n * Task - 任务实例\n *\n * 存储位置: /tasks/{YYYY-MM-DD}.ttl (按天分片)\n *\n * RDF 示例:\n * <#task-abc123> a udfs:Task ;\n * udfs:agent \"indexing\" ;\n * udfs:message \"用户在 </docs/> 上传了文件 </docs/report.pdf>\" ;\n * udfs:status \"pending\" ;\n * udfs:createdAt \"2026-01-09T10:00:00Z\"^^xsd:dateTime .\n */\nexport const Task = podTable(\n 'Task',\n {\n id: string('id').primaryKey(),\n agent: string('agent'),\n message: string('message'),\n status: string('status'),\n createdAt: datetime('createdAt'),\n startedAt: datetime('startedAt'),\n completedAt: datetime('completedAt'),\n result: json('result'),\n error: string('error'),\n },\n {\n base: '/tasks/',\n type: UDFS.Task,\n namespace: UDFS_NAMESPACE,\n subjectTemplate: '#{id}',\n },\n);\n\n/**\n * 获取今天的任务文件路径\n */\nexport function getTodayTaskPath(): string {\n const today = new Date().toISOString().split('T')[0];\n return `/tasks/${today}.ttl`;\n}\n\n/**\n * 获取指定日期的任务文件路径\n */\nexport function getTaskPathForDate(date: Date): string {\n const dateStr = date.toISOString().split('T')[0];\n return `/tasks/${dateStr}.ttl`;\n}\n\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@undefineds.co/xpod",
3
- "version": "0.2.0-preview.2",
3
+ "version": "0.2.0",
4
4
  "description": "Xpod is an extended Community Solid Server, offering rich-feature, production-level Solid Pod and identity management.",
5
5
  "repository": "https://github.com/undefinedsco/xpod",
6
6
  "author": "developer@undefineds.co",
@@ -58,15 +58,15 @@
58
58
  "clean": "rm -rf data/*",
59
59
  "clean:test": "rm -rf .test-data && rm -f *.sqlite *.sqlite-wal *.sqlite-shm",
60
60
  "vanilla": "yarn community-solid-server -c config/main.vanilla.json -f ./data_vanilla -p 3000",
61
- "cli": "yarn ts-node src/cli/index.ts",
62
- "start": "yarn ts-node src/main.ts",
61
+ "cli": "node scripts/check-native-abi.cjs && yarn ts-node src/cli/index.ts",
62
+ "start": "node scripts/check-native-abi.cjs && yarn ts-node src/main.ts",
63
63
  "local": "dotenv -e .env.local -- yarn start -c config/local.json",
64
64
  "cloud": "dotenv -e .env.cloud -- yarn start -c config/cloud.json",
65
65
  "dev": "./scripts/dev-start.sh",
66
66
  "dev:local": "./scripts/dev-start.sh --local",
67
67
  "dev:seed": "NODE_ENV=development CSS_SEED_CONFIG=$PWD/config/seed.dev.json dotenv -e .env.local -- yarn start -c config/local.json",
68
68
  "dev:cloud": "NODE_ENV=development CSS_SEED_CONFIG=$PWD/config/seed.dev.json dotenv -e .env.cloud -- yarn start -c config/cloud.json",
69
- "dev:api": "NODE_ENV=development dotenv -e .env.local -- yarn ts-node src/api/main.ts",
69
+ "dev:api": "node scripts/check-native-abi.cjs && NODE_ENV=development dotenv -e .env.local -- yarn ts-node src/api/main.ts",
70
70
  "dev:init": "NODE_ENV=development yarn ts-node scripts/init-dev-credentials.ts",
71
71
  "dev:test": "NODE_ENV=development yarn ts-node scripts/test-dev-flow.ts",
72
72
  "dev:cluster": "docker compose -f docker-compose.cluster.yml up --build",
@@ -86,15 +86,15 @@
86
86
  "test:storage": "vitest --run tests/storage/",
87
87
  "dev:cluster:lite": "docker compose -f docker-compose.standalone.yml up --build",
88
88
  "dev:cluster:lite:down": "docker compose -f docker-compose.standalone.yml down",
89
- "test:integration:lite": "yarn ts-node scripts/run-integration-lite-local.ts",
90
- "test:integration:full": "yarn test:integration:cluster",
91
- "test:integration:all": "yarn test:integration:lite && yarn test:integration:cluster",
89
+ "test:integration:lite": "node scripts/check-native-abi.cjs && yarn ts-node scripts/run-integration-lite-local.ts",
90
+ "test:integration:full": "node scripts/check-native-abi.cjs && yarn ts-node scripts/run-integration-cluster.ts",
91
+ "test:integration:all": "yarn test:integration:lite && yarn test:integration:full",
92
92
  "test:integration:lite:up": "docker compose -f docker-compose.standalone.yml up -d --build",
93
93
  "test:integration:lite:down": "docker compose -f docker-compose.standalone.yml down",
94
94
  "build:single": "node scripts/build-single-file.js",
95
95
  "build:single:standalone": "yarn build && node scripts/build-single-file.js",
96
- "test:setup": "dotenv -e .env.local -- yarn ts-node scripts/setup-test-credentials.ts",
97
- "test:integration:cluster": "yarn ts-node scripts/run-integration-cluster.ts"
96
+ "test:setup": "node scripts/check-native-abi.cjs && dotenv -e .env.local -- yarn ts-node scripts/setup-test-credentials.ts",
97
+ "check:abi": "node scripts/check-native-abi.cjs"
98
98
  },
99
99
  "devDependencies": {
100
100
  "@playwright/test": "^1.57.0",
@@ -130,10 +130,16 @@
130
130
  "@agentclientprotocol/sdk": "^0.14.1",
131
131
  "@ai-sdk/openai": "^3.0.2",
132
132
  "@anthropic-ai/claude-agent-sdk": "^0.2.39",
133
+ "@comunica/core": "^4.5.0",
134
+ "@comunica/query-sparql": "^4.5.0",
133
135
  "@comunica/query-sparql-rdfjs": "^4.0.2",
136
+ "@comunica/query-sparql-solid": "^4.0.2",
137
+ "@comunica/types": "^4.5.0",
138
+ "@comunica/utils-metadata": "^4.5.0",
134
139
  "@electric-sql/pglite": "^0.3.14",
135
140
  "@inrupt/solid-client-authn-node": "^3.1.0",
136
141
  "@solid/community-server": "^8.0.0-alpha.1",
142
+ "@undefineds.co/drizzle-solid": "^0.3.0",
137
143
  "@zed-industries/claude-code-acp": "^0.16.1",
138
144
  "@zed-industries/codex-acp": "^0.9.2",
139
145
  "abstract-level": "^1.0.4",
@@ -146,7 +152,6 @@
146
152
  "classic-level": "^1.4.1",
147
153
  "clsx": "^2.1.0",
148
154
  "drizzle-orm": "^0.30.10",
149
- "drizzle-solid": "^0.2.5",
150
155
  "http-proxy": "^1.18.1",
151
156
  "i18next": "^23.10.1",
152
157
  "knex": "^3.1.0",
@@ -190,5 +195,10 @@
190
195
  "@comunica/mediator-combine-union": "^4.5.0",
191
196
  "@comunica/mediator-combine-pipeline": "^4.5.0",
192
197
  "componentsjs": "^6.4.0"
198
+ },
199
+ "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
200
+ "volta": {
201
+ "node": "22.21.1",
202
+ "yarn": "1.22.22"
193
203
  }
194
204
  }