@agentlang/agentmanager 0.0.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/README.md +122 -0
- package/apps/agentcraft/README.md +237 -0
- package/apps/agentcraft/src/agentcraft-core.module.ts +40 -0
- package/apps/agentcraft/src/app.module.ts +28 -0
- package/apps/agentcraft/src/architect/architect.controller.ts +69 -0
- package/apps/agentcraft/src/architect/architect.module.ts +11 -0
- package/apps/agentcraft/src/architect/architect.service.ts +193 -0
- package/apps/agentcraft/src/architect/architect.store.ts +63 -0
- package/apps/agentcraft/src/architect/dto/ingest-signal.dto.ts +20 -0
- package/apps/agentcraft/src/architect/interfaces/architect.interfaces.ts +20 -0
- package/apps/agentcraft/src/autonomous/autonomous.controller.ts +92 -0
- package/apps/agentcraft/src/autonomous/autonomous.module.ts +9 -0
- package/apps/agentcraft/src/autonomous/autonomous.service.ts +160 -0
- package/apps/agentcraft/src/autonomous/dto/run-autonomous.dto.ts +16 -0
- package/apps/agentcraft/src/autonomous/dto/watch-kb.dto.ts +16 -0
- package/apps/agentcraft/src/config/configuration.ts +74 -0
- package/apps/agentcraft/src/health/health.controller.ts +22 -0
- package/apps/agentcraft/src/health/health.module.ts +9 -0
- package/apps/agentcraft/src/main.ts +53 -0
- package/apps/agentcraft/src/resolver/dto/create-resolver.dto.ts +14 -0
- package/apps/agentcraft/src/resolver/dto/install-registry.dto.ts +10 -0
- package/apps/agentcraft/src/resolver/dto/search-registry-query.dto.ts +10 -0
- package/apps/agentcraft/src/resolver/dto/submit-action.dto.ts +4 -0
- package/apps/agentcraft/src/resolver/resolver-session.store.ts +39 -0
- package/apps/agentcraft/src/resolver/resolver.controller.ts +86 -0
- package/apps/agentcraft/src/resolver/resolver.module.ts +10 -0
- package/apps/agentcraft/src/resolver/resolver.service.ts +128 -0
- package/apps/agentcraft/src/sessions/dto/create-session.dto.ts +12 -0
- package/apps/agentcraft/src/sessions/dto/submit-action.dto.ts +1 -0
- package/apps/agentcraft/src/sessions/dto/submit-idea.dto.ts +8 -0
- package/apps/agentcraft/src/sessions/session.store.ts +39 -0
- package/apps/agentcraft/src/sessions/sessions.controller.ts +87 -0
- package/apps/agentcraft/src/sessions/sessions.module.ts +10 -0
- package/apps/agentcraft/src/sessions/sessions.service.ts +277 -0
- package/apps/agentcraft/tsconfig.app.json +8 -0
- package/apps/agentmanager/README.md +141 -0
- package/apps/agentmanager/src/agentmanager-core.module.ts +45 -0
- package/apps/agentmanager/src/app.module.ts +26 -0
- package/apps/agentmanager/src/config/configuration.ts +63 -0
- package/apps/agentmanager/src/deployments/deployments.controller.ts +21 -0
- package/apps/agentmanager/src/deployments/deployments.module.ts +10 -0
- package/apps/agentmanager/src/deployments/deployments.service.ts +166 -0
- package/apps/agentmanager/src/deployments/errors/deployment.errors.ts +13 -0
- package/apps/agentmanager/src/deployments/interfaces/deployment.interfaces.ts +25 -0
- package/apps/agentmanager/src/discovery/discovery.controller.ts +14 -0
- package/apps/agentmanager/src/discovery/discovery.module.ts +36 -0
- package/apps/agentmanager/src/discovery/discovery.service.ts +174 -0
- package/apps/agentmanager/src/discovery/dto/discover.dto.ts +8 -0
- package/apps/agentmanager/src/discovery/interfaces/discovery.interfaces.ts +22 -0
- package/apps/agentmanager/src/discovery/llm/anthropic-llm.service.ts +67 -0
- package/apps/agentmanager/src/discovery/llm/llm-provider.interface.ts +17 -0
- package/apps/agentmanager/src/discovery/llm/llm.errors.ts +7 -0
- package/apps/agentmanager/src/discovery/llm/openai-llm.service.ts +67 -0
- package/apps/agentmanager/src/employee-code/dto/put-config.dto.ts +8 -0
- package/apps/agentmanager/src/employee-code/dto/put-module.dto.ts +8 -0
- package/apps/agentmanager/src/employee-code/dto/put-package.dto.ts +13 -0
- package/apps/agentmanager/src/employee-code/employee-code.controller.ts +114 -0
- package/apps/agentmanager/src/employee-code/employee-code.module.ts +10 -0
- package/apps/agentmanager/src/employee-code/employee-code.service.ts +55 -0
- package/apps/agentmanager/src/employees/dto/register-employee.dto.ts +9 -0
- package/apps/agentmanager/src/employees/employees.controller.ts +53 -0
- package/apps/agentmanager/src/employees/employees.module.ts +10 -0
- package/apps/agentmanager/src/employees/employees.service.ts +29 -0
- package/apps/agentmanager/src/health/health.controller.ts +22 -0
- package/apps/agentmanager/src/health/health.module.ts +9 -0
- package/apps/agentmanager/src/inbox/dto/list-messages-query.dto.ts +12 -0
- package/apps/agentmanager/src/inbox/dto/push-message.dto.ts +55 -0
- package/apps/agentmanager/src/inbox/dto/respond-message.dto.ts +9 -0
- package/apps/agentmanager/src/inbox/inbox.controller.ts +87 -0
- package/apps/agentmanager/src/inbox/inbox.module.ts +10 -0
- package/apps/agentmanager/src/inbox/inbox.service.ts +209 -0
- package/apps/agentmanager/src/main.ts +53 -0
- package/apps/agentmanager/src/projects/dto/create-project.dto.ts +10 -0
- package/apps/agentmanager/src/projects/projects.controller.ts +47 -0
- package/apps/agentmanager/src/projects/projects.module.ts +10 -0
- package/apps/agentmanager/src/projects/projects.service.ts +24 -0
- package/apps/agentmanager/tsconfig.app.json +8 -0
- package/apps/fabric/Dockerfile +22 -0
- package/apps/fabric/docker-compose.yml +14 -0
- package/apps/fabric/ecosystem.config.cjs +17 -0
- package/apps/fabric/src/ai-agent/ai-agent.module.ts +43 -0
- package/apps/fabric/src/ai-agent/ai-agent.service.ts +374 -0
- package/apps/fabric/src/ai-agent/probe-investigation.types.ts +24 -0
- package/apps/fabric/src/app.module.ts +40 -0
- package/apps/fabric/src/auth/current-user.decorator.ts +11 -0
- package/apps/fabric/src/auth/request-user.ts +4 -0
- package/apps/fabric/src/config/configuration.ts +266 -0
- package/apps/fabric/src/database/entities/deployment-event.entity.ts +33 -0
- package/apps/fabric/src/database/entities/environment.entity.ts +25 -0
- package/apps/fabric/src/database/entities/index.ts +25 -0
- package/apps/fabric/src/database/entities/project.entity.ts +25 -0
- package/apps/fabric/src/database/entities/runtime.entity.ts +55 -0
- package/apps/fabric/src/database/entities/user-config.entity.ts +22 -0
- package/apps/fabric/src/database/entities/version.entity.ts +22 -0
- package/apps/fabric/src/database/migrations-data-source.ts +27 -0
- package/apps/fabric/src/deployment-events/deployment-events.controller.ts +27 -0
- package/apps/fabric/src/deployment-events/deployment-events.module.ts +11 -0
- package/apps/fabric/src/deployment-events/deployment-events.service.ts +58 -0
- package/apps/fabric/src/deployment-events/deployment-events.store.ts +162 -0
- package/apps/fabric/src/deployment-events/deployment-events.types.ts +24 -0
- package/apps/fabric/src/employees/dto/deploy.dto.ts +71 -0
- package/apps/fabric/src/employees/employees.controller.ts +217 -0
- package/apps/fabric/src/employees/employees.module.ts +32 -0
- package/apps/fabric/src/employees/employees.service.ts +1333 -0
- package/apps/fabric/src/employees/employees.types.ts +69 -0
- package/apps/fabric/src/employees/errors/employee-deployment.errors.ts +80 -0
- package/apps/fabric/src/employees/runtime.store.ts +304 -0
- package/apps/fabric/src/environments/dto/environment.dto.ts +26 -0
- package/apps/fabric/src/environments/environments.controller.ts +48 -0
- package/apps/fabric/src/environments/environments.module.ts +11 -0
- package/apps/fabric/src/environments/environments.service.ts +92 -0
- package/apps/fabric/src/environments/environments.store.ts +146 -0
- package/apps/fabric/src/environments/environments.types.ts +11 -0
- package/apps/fabric/src/environments/errors/environment.errors.ts +14 -0
- package/apps/fabric/src/fabric-core.module.ts +48 -0
- package/apps/fabric/src/health/health.controller.ts +19 -0
- package/apps/fabric/src/health/health.module.ts +12 -0
- package/apps/fabric/src/health/provider-health.indicator.ts +33 -0
- package/apps/fabric/src/healthcheck/healthcheck.module.ts +24 -0
- package/apps/fabric/src/healthcheck/healthcheck.service.ts +494 -0
- package/apps/fabric/src/logs/logs.module.ts +10 -0
- package/apps/fabric/src/logs/logs.service.ts +149 -0
- package/apps/fabric/src/main.ts +57 -0
- package/apps/fabric/src/notifications/notifications.module.ts +23 -0
- package/apps/fabric/src/notifications/notifications.service.ts +141 -0
- package/apps/fabric/src/project-source/errors/project-source.errors.ts +8 -0
- package/apps/fabric/src/project-source/project-source.module.ts +8 -0
- package/apps/fabric/src/project-source/project-source.service.ts +75 -0
- package/apps/fabric/src/project-source/project-source.types.ts +5 -0
- package/apps/fabric/src/projects/dto/project.dto.ts +25 -0
- package/apps/fabric/src/projects/errors/project.errors.ts +17 -0
- package/apps/fabric/src/projects/projects-data.service.ts +60 -0
- package/apps/fabric/src/projects/projects.controller.ts +92 -0
- package/apps/fabric/src/projects/projects.module.ts +20 -0
- package/apps/fabric/src/projects/projects.service.ts +323 -0
- package/apps/fabric/src/projects/projects.store.ts +142 -0
- package/apps/fabric/src/projects/projects.types.ts +9 -0
- package/apps/fabric/src/providers/docker-provider.ts +141 -0
- package/apps/fabric/src/providers/eks-provider.ts +279 -0
- package/apps/fabric/src/providers/pm2-provider.ts +205 -0
- package/apps/fabric/src/providers/port-allocator.ts +57 -0
- package/apps/fabric/src/providers/provider-factory.ts +32 -0
- package/apps/fabric/src/providers/provider.interface.ts +50 -0
- package/apps/fabric/src/providers/providers.module.ts +26 -0
- package/apps/fabric/src/provisioners/cognito-provisioner.service.ts +168 -0
- package/apps/fabric/src/provisioners/postgres-provisioner.service.ts +124 -0
- package/apps/fabric/src/provisioners/provisioners.module.ts +40 -0
- package/apps/fabric/src/user-config/user-config.module.ts +9 -0
- package/apps/fabric/src/user-config/user-config.service.ts +54 -0
- package/apps/fabric/src/user-config/user-config.store.ts +120 -0
- package/apps/fabric/src/user-config/user-config.types.ts +11 -0
- package/apps/fabric/src/versions/versions.controller.ts +24 -0
- package/apps/fabric/src/versions/versions.module.ts +11 -0
- package/apps/fabric/src/versions/versions.service.ts +65 -0
- package/apps/fabric/src/versions/versions.store.ts +160 -0
- package/apps/fabric/src/versions/versions.types.ts +12 -0
- package/apps/fabric/src/watcher/deployment-watcher.module.ts +22 -0
- package/apps/fabric/src/watcher/deployment-watcher.service.ts +92 -0
- package/apps/fabric/src/watcher/pod-probe.service.ts +231 -0
- package/apps/fabric/tsconfig.app.json +8 -0
- package/apps/integrations/prisma/.integrations/integrations.sqlite +0 -0
- package/apps/integrations/prisma/prisma.config.ts +8 -0
- package/apps/integrations/prisma/prisma.sqlite.config.ts +8 -0
- package/apps/integrations/prisma/schema.postgres.prisma +27 -0
- package/apps/integrations/prisma/schema.sqlite.prisma +27 -0
- package/apps/integrations/scripts/prepare-db.cjs +92 -0
- package/apps/integrations/src/api/auth-flow.controller.ts +39 -0
- package/apps/integrations/src/api/connections.controller.ts +26 -0
- package/apps/integrations/src/api/health.controller.ts +34 -0
- package/apps/integrations/src/api/providers.controller.ts +60 -0
- package/apps/integrations/src/api/tenant-config.controller.ts +62 -0
- package/apps/integrations/src/app.module.ts +38 -0
- package/apps/integrations/src/config/configuration.ts +134 -0
- package/apps/integrations/src/generated/prisma-postgres/browser.ts +24 -0
- package/apps/integrations/src/generated/prisma-postgres/client.ts +46 -0
- package/apps/integrations/src/generated/prisma-postgres/commonInputTypes.ts +297 -0
- package/apps/integrations/src/generated/prisma-postgres/enums.ts +15 -0
- package/apps/integrations/src/generated/prisma-postgres/internal/class.ts +204 -0
- package/apps/integrations/src/generated/prisma-postgres/internal/prismaNamespace.ts +794 -0
- package/apps/integrations/src/generated/prisma-postgres/internal/prismaNamespaceBrowser.ts +126 -0
- package/apps/integrations/src/generated/prisma-postgres/models/IntegrationEntity.ts +1273 -0
- package/apps/integrations/src/generated/prisma-postgres/models.ts +12 -0
- package/apps/integrations/src/generated/prisma-sqlite/browser.ts +24 -0
- package/apps/integrations/src/generated/prisma-sqlite/client.ts +46 -0
- package/apps/integrations/src/generated/prisma-sqlite/commonInputTypes.ts +278 -0
- package/apps/integrations/src/generated/prisma-sqlite/enums.ts +15 -0
- package/apps/integrations/src/generated/prisma-sqlite/internal/class.ts +204 -0
- package/apps/integrations/src/generated/prisma-sqlite/internal/prismaNamespace.ts +770 -0
- package/apps/integrations/src/generated/prisma-sqlite/internal/prismaNamespaceBrowser.ts +123 -0
- package/apps/integrations/src/generated/prisma-sqlite/models/IntegrationEntity.ts +1271 -0
- package/apps/integrations/src/generated/prisma-sqlite/models.ts +12 -0
- package/apps/integrations/src/integrations-core.module.ts +52 -0
- package/apps/integrations/src/main.ts +63 -0
- package/apps/integrations/src/modules/auth-flow/auth-flow.module.ts +21 -0
- package/apps/integrations/src/modules/auth-flow/auth-flow.service.ts +275 -0
- package/apps/integrations/src/modules/auth-flow/dto/auth-flow.dto.ts +36 -0
- package/apps/integrations/src/modules/auth-flow/scheduler.service.ts +73 -0
- package/apps/integrations/src/modules/connections/connections.module.ts +11 -0
- package/apps/integrations/src/modules/connections/connections.service.ts +109 -0
- package/apps/integrations/src/modules/credentials/credentials.module.ts +11 -0
- package/apps/integrations/src/modules/credentials/encryption.service.ts +71 -0
- package/apps/integrations/src/modules/credentials/token-store.service.ts +82 -0
- package/apps/integrations/src/modules/discovery/discovery.module.ts +8 -0
- package/apps/integrations/src/modules/discovery/oidc-discovery.service.ts +114 -0
- package/apps/integrations/src/modules/platform/metadata-store.service.ts +337 -0
- package/apps/integrations/src/modules/platform/platform.module.ts +8 -0
- package/apps/integrations/src/modules/platform/platform.types.ts +10 -0
- package/apps/integrations/src/modules/platform/resilient-fetch.ts +53 -0
- package/apps/integrations/src/modules/providers/base/api-key.provider.ts +43 -0
- package/apps/integrations/src/modules/providers/base/basic-auth.provider.ts +44 -0
- package/apps/integrations/src/modules/providers/base/oauth2.provider.ts +233 -0
- package/apps/integrations/src/modules/providers/base/oidc.provider.ts +87 -0
- package/apps/integrations/src/modules/providers/builtin/google-drive.provider.ts +40 -0
- package/apps/integrations/src/modules/providers/dto/provider.dto.ts +53 -0
- package/apps/integrations/src/modules/providers/provider.factory.ts +68 -0
- package/apps/integrations/src/modules/providers/provider.registry.ts +123 -0
- package/apps/integrations/src/modules/providers/provider.types.ts +185 -0
- package/apps/integrations/src/modules/providers/providers.module.ts +34 -0
- package/apps/integrations/src/modules/tenant-config/dto/tenant-config.dto.ts +28 -0
- package/apps/integrations/src/modules/tenant-config/tenant-config.module.ts +11 -0
- package/apps/integrations/src/modules/tenant-config/tenant-config.service.ts +212 -0
- package/apps/integrations/tsconfig.app.json +8 -0
- package/apps/knowledge/prisma/prisma.config.ts +8 -0
- package/apps/knowledge/prisma/schema.postgres.prisma +29 -0
- package/apps/knowledge/prisma/schema.sqlite.prisma +29 -0
- package/apps/knowledge/scripts/prepare-db.cjs +72 -0
- package/apps/knowledge/src/api/auth.controller.ts +54 -0
- package/apps/knowledge/src/api/connections.controller.ts +99 -0
- package/apps/knowledge/src/api/documents.controller.ts +45 -0
- package/apps/knowledge/src/api/graph.controller.ts +67 -0
- package/apps/knowledge/src/api/health.controller.ts +39 -0
- package/apps/knowledge/src/api/ingestion.controller.ts +45 -0
- package/apps/knowledge/src/api/knowledge-query.controller.ts +27 -0
- package/apps/knowledge/src/api/oauth.controller.ts +38 -0
- package/apps/knowledge/src/api/recommendations.controller.ts +63 -0
- package/apps/knowledge/src/api/scheduler.controller.ts +32 -0
- package/apps/knowledge/src/api/topics.controller.ts +46 -0
- package/apps/knowledge/src/app.module.ts +68 -0
- package/apps/knowledge/src/config/configuration.ts +149 -0
- package/apps/knowledge/src/generated/prisma-postgres/browser.ts +24 -0
- package/apps/knowledge/src/generated/prisma-postgres/client.ts +46 -0
- package/apps/knowledge/src/generated/prisma-postgres/commonInputTypes.ts +297 -0
- package/apps/knowledge/src/generated/prisma-postgres/enums.ts +15 -0
- package/apps/knowledge/src/generated/prisma-postgres/internal/class.ts +204 -0
- package/apps/knowledge/src/generated/prisma-postgres/internal/prismaNamespace.ts +795 -0
- package/apps/knowledge/src/generated/prisma-postgres/internal/prismaNamespaceBrowser.ts +127 -0
- package/apps/knowledge/src/generated/prisma-postgres/models/KnowledgeEntity.ts +1301 -0
- package/apps/knowledge/src/generated/prisma-postgres/models.ts +12 -0
- package/apps/knowledge/src/generated/prisma-sqlite/browser.ts +24 -0
- package/apps/knowledge/src/generated/prisma-sqlite/client.ts +46 -0
- package/apps/knowledge/src/generated/prisma-sqlite/commonInputTypes.ts +278 -0
- package/apps/knowledge/src/generated/prisma-sqlite/enums.ts +15 -0
- package/apps/knowledge/src/generated/prisma-sqlite/internal/class.ts +204 -0
- package/apps/knowledge/src/generated/prisma-sqlite/internal/prismaNamespace.ts +771 -0
- package/apps/knowledge/src/generated/prisma-sqlite/internal/prismaNamespaceBrowser.ts +124 -0
- package/apps/knowledge/src/generated/prisma-sqlite/models/KnowledgeEntity.ts +1299 -0
- package/apps/knowledge/src/generated/prisma-sqlite/models.ts +12 -0
- package/apps/knowledge/src/main.ts +48 -0
- package/apps/knowledge/src/modules/auth/auth.module.ts +8 -0
- package/apps/knowledge/src/modules/auth/auth.service.ts +290 -0
- package/apps/knowledge/src/modules/documents/documents.module.ts +12 -0
- package/apps/knowledge/src/modules/documents/documents.service.ts +179 -0
- package/apps/knowledge/src/modules/documents/dto/document.dto.ts +68 -0
- package/apps/knowledge/src/modules/graph/graph.module.ts +10 -0
- package/apps/knowledge/src/modules/graph/graph.service.ts +223 -0
- package/apps/knowledge/src/modules/ingestion/dto/ingestion.dto.ts +58 -0
- package/apps/knowledge/src/modules/ingestion/ingestion-workflows.service.ts +246 -0
- package/apps/knowledge/src/modules/ingestion/ingestion.module.ts +14 -0
- package/apps/knowledge/src/modules/ingestion/ingestion.service.ts +619 -0
- package/apps/knowledge/src/modules/oauth-bridge/oauth-bridge.module.ts +8 -0
- package/apps/knowledge/src/modules/oauth-bridge/oauth-bridge.service.ts +135 -0
- package/apps/knowledge/src/modules/platform/metadata-store.service.ts +314 -0
- package/apps/knowledge/src/modules/platform/platform.module.ts +9 -0
- package/apps/knowledge/src/modules/platform/platform.types.ts +23 -0
- package/apps/knowledge/src/modules/platform/vector-store.service.ts +235 -0
- package/apps/knowledge/src/modules/recommendations/recommendations.module.ts +10 -0
- package/apps/knowledge/src/modules/recommendations/recommendations.service.ts +121 -0
- package/apps/knowledge/src/modules/storage/storage.module.ts +8 -0
- package/apps/knowledge/src/modules/storage/storage.service.ts +150 -0
- package/apps/knowledge/src/modules/sync/scheduler.service.ts +175 -0
- package/apps/knowledge/src/modules/sync/sync.module.ts +11 -0
- package/apps/knowledge/src/modules/topics/dto/topic.dto.ts +50 -0
- package/apps/knowledge/src/modules/topics/topics.module.ts +10 -0
- package/apps/knowledge/src/modules/topics/topics.service.ts +86 -0
- package/apps/knowledge/tsconfig.app.json +8 -0
- package/apps/monolith/src/app.module.ts +75 -0
- package/apps/monolith/src/config/configuration.ts +93 -0
- package/apps/monolith/src/health/health.controller.ts +22 -0
- package/apps/monolith/src/health/health.module.ts +9 -0
- package/apps/monolith/src/main.ts +56 -0
- package/apps/monolith/tsconfig.app.json +8 -0
- package/libs/agentcraft/src/agentcraft.module.d.ts +12 -0
- package/libs/agentcraft/src/agentcraft.module.js +142 -0
- package/libs/agentcraft/src/agentcraft.module.js.map +1 -0
- package/libs/agentcraft/src/agentcraft.module.ts +161 -0
- package/libs/agentcraft/src/constants.d.ts +2 -0
- package/libs/agentcraft/src/constants.js +6 -0
- package/libs/agentcraft/src/constants.js.map +1 -0
- package/libs/agentcraft/src/constants.ts +2 -0
- package/libs/agentcraft/src/dto/submit-action.dto.ts +20 -0
- package/libs/agentcraft/src/errors/domain.error.d.ts +8 -0
- package/libs/agentcraft/src/errors/domain.error.js +27 -0
- package/libs/agentcraft/src/errors/domain.error.js.map +1 -0
- package/libs/agentcraft/src/errors/domain.error.ts +14 -0
- package/libs/agentcraft/src/errors/llm.errors.d.ts +10 -0
- package/libs/agentcraft/src/errors/llm.errors.js +26 -0
- package/libs/agentcraft/src/errors/llm.errors.js.map +1 -0
- package/libs/agentcraft/src/errors/llm.errors.ts +19 -0
- package/libs/agentcraft/src/index.d.ts +64 -0
- package/libs/agentcraft/src/index.js +195 -0
- package/libs/agentcraft/src/index.js.map +1 -0
- package/libs/agentcraft/src/index.ts +171 -0
- package/libs/agentcraft/src/instructions/step6-data-model.ts +181 -0
- package/libs/agentcraft/src/instructions/step7-workflows.ts +544 -0
- package/libs/agentcraft/src/instructions/step8-agents.ts +114 -0
- package/libs/agentcraft/src/interfaces/llm-provider.interface.d.ts +16 -0
- package/libs/agentcraft/src/interfaces/llm-provider.interface.js +3 -0
- package/libs/agentcraft/src/interfaces/llm-provider.interface.js.map +1 -0
- package/libs/agentcraft/src/interfaces/llm-provider.interface.ts +18 -0
- package/libs/agentcraft/src/prompts/assembly.prompt.ts +104 -0
- package/libs/agentcraft/src/prompts/codegen.prompt.ts +162 -0
- package/libs/agentcraft/src/prompts/decomposition.prompt.ts +32 -0
- package/libs/agentcraft/src/prompts/examples-provider.ts +63 -0
- package/libs/agentcraft/src/prompts/planning.prompt.ts +52 -0
- package/libs/agentcraft/src/prompts/resolver.prompt.ts +364 -0
- package/libs/agentcraft/src/prompts/semantics-guide.ts +134 -0
- package/libs/agentcraft/src/services/anthropic-craft-llm.service.ts +186 -0
- package/libs/agentcraft/src/services/anthropic-llm.service.d.ts +9 -0
- package/libs/agentcraft/src/services/anthropic-llm.service.js +90 -0
- package/libs/agentcraft/src/services/anthropic-llm.service.js.map +1 -0
- package/libs/agentcraft/src/services/anthropic-llm.service.ts +61 -0
- package/libs/agentcraft/src/services/api-adapter.service.d.ts +65 -0
- package/libs/agentcraft/src/services/api-adapter.service.js +167 -0
- package/libs/agentcraft/src/services/api-adapter.service.js.map +1 -0
- package/libs/agentcraft/src/services/api-adapter.service.ts +186 -0
- package/libs/agentcraft/src/services/architect-loop.service.d.ts +16 -0
- package/libs/agentcraft/src/services/architect-loop.service.js +92 -0
- package/libs/agentcraft/src/services/architect-loop.service.js.map +1 -0
- package/libs/agentcraft/src/services/architect-loop.service.ts +407 -0
- package/libs/agentcraft/src/services/autonomous-runner.service.ts +178 -0
- package/libs/agentcraft/src/services/craft-config.service.d.ts +11 -0
- package/libs/agentcraft/src/services/craft-config.service.js +127 -0
- package/libs/agentcraft/src/services/craft-config.service.js.map +1 -0
- package/libs/agentcraft/src/services/craft-config.service.ts +92 -0
- package/libs/agentcraft/src/services/craft-llm-adapter.service.d.ts +12 -0
- package/libs/agentcraft/src/services/craft-llm-adapter.service.js +73 -0
- package/libs/agentcraft/src/services/craft-llm-adapter.service.js.map +1 -0
- package/libs/agentcraft/src/services/craft-llm-adapter.service.ts +52 -0
- package/libs/agentcraft/src/services/decomposer.service.ts +115 -0
- package/libs/agentcraft/src/services/design-generator.service.ts +672 -0
- package/libs/agentcraft/src/services/executor.service.ts +452 -0
- package/libs/agentcraft/src/services/kb-watcher.service.ts +150 -0
- package/libs/agentcraft/src/services/openai-llm.service.d.ts +9 -0
- package/libs/agentcraft/src/services/openai-llm.service.js +91 -0
- package/libs/agentcraft/src/services/openai-llm.service.js.map +1 -0
- package/libs/agentcraft/src/services/openai-llm.service.ts +61 -0
- package/libs/agentcraft/src/services/output-parser.service.d.ts +9 -0
- package/libs/agentcraft/src/services/output-parser.service.js +80 -0
- package/libs/agentcraft/src/services/output-parser.service.js.map +1 -0
- package/libs/agentcraft/src/services/output-parser.service.ts +68 -0
- package/libs/agentcraft/src/services/pipeline-state.service.d.ts +19 -0
- package/libs/agentcraft/src/services/pipeline-state.service.js +134 -0
- package/libs/agentcraft/src/services/pipeline-state.service.js.map +1 -0
- package/libs/agentcraft/src/services/pipeline-state.service.ts +108 -0
- package/libs/agentcraft/src/services/pipeline-steps.service.d.ts +10 -0
- package/libs/agentcraft/src/services/pipeline-steps.service.js +147 -0
- package/libs/agentcraft/src/services/pipeline-steps.service.js.map +1 -0
- package/libs/agentcraft/src/services/pipeline-steps.service.ts +126 -0
- package/libs/agentcraft/src/services/planner.service.ts +189 -0
- package/libs/agentcraft/src/services/readme-generator.service.ts +229 -0
- package/libs/agentcraft/src/services/registry-client.service.d.ts +14 -0
- package/libs/agentcraft/src/services/registry-client.service.js +158 -0
- package/libs/agentcraft/src/services/registry-client.service.js.map +1 -0
- package/libs/agentcraft/src/services/registry-client.service.ts +139 -0
- package/libs/agentcraft/src/services/requirements-generator.service.ts +238 -0
- package/libs/agentcraft/src/services/spec-fetcher.service.d.ts +3 -0
- package/libs/agentcraft/src/services/spec-fetcher.service.js +46 -0
- package/libs/agentcraft/src/services/spec-fetcher.service.js.map +1 -0
- package/libs/agentcraft/src/services/spec-fetcher.service.ts +21 -0
- package/libs/agentcraft/src/services/ui-blueprint-generator.service.ts +387 -0
- package/libs/agentcraft/src/types/architect.types.ts +156 -0
- package/libs/agentcraft/src/types/autonomous.types.ts +71 -0
- package/libs/agentcraft/src/types/llm.types.d.ts +26 -0
- package/libs/agentcraft/src/types/llm.types.js +3 -0
- package/libs/agentcraft/src/types/llm.types.js.map +1 -0
- package/libs/agentcraft/src/types/llm.types.ts +60 -0
- package/libs/agentcraft/src/types/pipeline.types.d.ts +55 -0
- package/libs/agentcraft/src/types/pipeline.types.js +37 -0
- package/libs/agentcraft/src/types/pipeline.types.js.map +1 -0
- package/libs/agentcraft/src/types/pipeline.types.ts +61 -0
- package/libs/agentcraft/src/types/resolver.types.d.ts +27 -0
- package/libs/agentcraft/src/types/resolver.types.js +3 -0
- package/libs/agentcraft/src/types/resolver.types.js.map +1 -0
- package/libs/agentcraft/src/types/resolver.types.ts +22 -0
- package/libs/agentcraft/src/types/signal.types.d.ts +16 -0
- package/libs/agentcraft/src/types/signal.types.js +3 -0
- package/libs/agentcraft/src/types/signal.types.js.map +1 -0
- package/libs/agentcraft/src/types/signal.types.ts +18 -0
- package/libs/agentcraft/src/utils/kb-loader.ts +67 -0
- package/libs/agentcraft/src/utils/output-writer.ts +71 -0
- package/libs/agentcraft/src/utils/spec-fetcher.ts +20 -0
- package/libs/agentcraft/src/utils/spec-trimmer.ts +280 -0
- package/libs/agentcraft/src/utils/text-utils.ts +49 -0
- package/libs/agentcraft/src/utils/validator.ts +231 -0
- package/libs/agentcraft/tsconfig.lib.json +9 -0
- package/libs/auth/src/auth.guard.ts +188 -0
- package/libs/auth/src/auth.module.ts +11 -0
- package/libs/auth/src/index.ts +3 -0
- package/libs/auth/src/public.decorator.ts +5 -0
- package/libs/auth/tsconfig.lib.json +9 -0
- package/libs/common/src/database/data-source.service.ts +75 -0
- package/libs/common/src/database/database-connection.holder.ts +41 -0
- package/libs/common/src/database/database.config.ts +14 -0
- package/libs/common/src/database/database.module.ts +42 -0
- package/libs/common/src/database/embedded-database.service.ts +120 -0
- package/libs/common/src/database/file-store.factory.ts +20 -0
- package/libs/common/src/database/file-store.ts +47 -0
- package/libs/common/src/errors/domain.error.ts +11 -0
- package/libs/common/src/filters/domain-exception.filter.ts +62 -0
- package/libs/common/src/index.ts +15 -0
- package/libs/common/src/interceptors/logging.interceptor.ts +60 -0
- package/libs/common/tsconfig.lib.json +9 -0
- package/libs/project-provider/src/constants.d.ts +7 -0
- package/libs/project-provider/src/constants.js +18 -0
- package/libs/project-provider/src/constants.js.map +1 -0
- package/libs/project-provider/src/constants.ts +7 -0
- package/libs/project-provider/src/errors/domain.error.d.ts +4 -0
- package/libs/project-provider/src/errors/domain.error.js +13 -0
- package/libs/project-provider/src/errors/domain.error.js.map +1 -0
- package/libs/project-provider/src/errors/domain.error.ts +1 -0
- package/libs/project-provider/src/errors/employee-code.errors.d.ts +13 -0
- package/libs/project-provider/src/errors/employee-code.errors.js +42 -0
- package/libs/project-provider/src/errors/employee-code.errors.js.map +1 -0
- package/libs/project-provider/src/errors/employee-code.errors.ts +37 -0
- package/libs/project-provider/src/errors/inbox.errors.d.ts +13 -0
- package/libs/project-provider/src/errors/inbox.errors.js +36 -0
- package/libs/project-provider/src/errors/inbox.errors.js.map +1 -0
- package/libs/project-provider/src/errors/inbox.errors.ts +31 -0
- package/libs/project-provider/src/errors/registry.errors.d.ts +16 -0
- package/libs/project-provider/src/errors/registry.errors.js +46 -0
- package/libs/project-provider/src/errors/registry.errors.js.map +1 -0
- package/libs/project-provider/src/errors/registry.errors.ts +40 -0
- package/libs/project-provider/src/index.d.ts +67 -0
- package/libs/project-provider/src/index.js +220 -0
- package/libs/project-provider/src/index.js.map +1 -0
- package/libs/project-provider/src/index.ts +82 -0
- package/libs/project-provider/src/interfaces/employee-code-provider.interface.d.ts +36 -0
- package/libs/project-provider/src/interfaces/employee-code-provider.interface.js +3 -0
- package/libs/project-provider/src/interfaces/employee-code-provider.interface.js.map +1 -0
- package/libs/project-provider/src/interfaces/employee-code-provider.interface.ts +37 -0
- package/libs/project-provider/src/interfaces/inbox-client.interface.d.ts +3 -0
- package/libs/project-provider/src/interfaces/inbox-client.interface.js +3 -0
- package/libs/project-provider/src/interfaces/inbox-client.interface.js.map +1 -0
- package/libs/project-provider/src/interfaces/inbox-client.interface.ts +3 -0
- package/libs/project-provider/src/interfaces/inbox-handler.interface.ts +10 -0
- package/libs/project-provider/src/interfaces/knowledge-base.interface.d.ts +5 -0
- package/libs/project-provider/src/interfaces/knowledge-base.interface.js +3 -0
- package/libs/project-provider/src/interfaces/knowledge-base.interface.js.map +1 -0
- package/libs/project-provider/src/interfaces/knowledge-base.interface.ts +6 -0
- package/libs/project-provider/src/interfaces/registry-provider.interface.d.ts +24 -0
- package/libs/project-provider/src/interfaces/registry-provider.interface.js +3 -0
- package/libs/project-provider/src/interfaces/registry-provider.interface.js.map +1 -0
- package/libs/project-provider/src/interfaces/registry-provider.interface.ts +36 -0
- package/libs/project-provider/src/project-provider.module.d.ts +10 -0
- package/libs/project-provider/src/project-provider.module.js +137 -0
- package/libs/project-provider/src/project-provider.module.js.map +1 -0
- package/libs/project-provider/src/project-provider.module.ts +119 -0
- package/libs/project-provider/src/services/al-parser.service.d.ts +6 -0
- package/libs/project-provider/src/services/al-parser.service.js +103 -0
- package/libs/project-provider/src/services/al-parser.service.js.map +1 -0
- package/libs/project-provider/src/services/al-parser.service.ts +92 -0
- package/libs/project-provider/src/services/direct-inbox-client.service.ts +24 -0
- package/libs/project-provider/src/services/file-knowledge-base.service.d.ts +8 -0
- package/libs/project-provider/src/services/file-knowledge-base.service.js +158 -0
- package/libs/project-provider/src/services/file-knowledge-base.service.js.map +1 -0
- package/libs/project-provider/src/services/file-knowledge-base.service.ts +81 -0
- package/libs/project-provider/src/services/filesystem-employee-code.service.d.ts +49 -0
- package/libs/project-provider/src/services/filesystem-employee-code.service.js +227 -0
- package/libs/project-provider/src/services/filesystem-employee-code.service.js.map +1 -0
- package/libs/project-provider/src/services/filesystem-employee-code.service.ts +220 -0
- package/libs/project-provider/src/services/filesystem-registry.service.d.ts +34 -0
- package/libs/project-provider/src/services/filesystem-registry.service.js +231 -0
- package/libs/project-provider/src/services/filesystem-registry.service.js.map +1 -0
- package/libs/project-provider/src/services/filesystem-registry.service.ts +271 -0
- package/libs/project-provider/src/services/http-inbox-client.service.d.ts +7 -0
- package/libs/project-provider/src/services/http-inbox-client.service.js +66 -0
- package/libs/project-provider/src/services/http-inbox-client.service.js.map +1 -0
- package/libs/project-provider/src/services/http-inbox-client.service.ts +29 -0
- package/libs/project-provider/src/services/noop-inbox-client.service.d.ts +4 -0
- package/libs/project-provider/src/services/noop-inbox-client.service.js +32 -0
- package/libs/project-provider/src/services/noop-inbox-client.service.js.map +1 -0
- package/libs/project-provider/src/services/noop-inbox-client.service.ts +9 -0
- package/libs/project-provider/src/types/messaging.types.d.ts +49 -0
- package/libs/project-provider/src/types/messaging.types.js +11 -0
- package/libs/project-provider/src/types/messaging.types.js.map +1 -0
- package/libs/project-provider/src/types/messaging.types.ts +59 -0
- package/libs/project-provider/src/types/project.types.d.ts +44 -0
- package/libs/project-provider/src/types/project.types.js +3 -0
- package/libs/project-provider/src/types/project.types.js.map +1 -0
- package/libs/project-provider/src/types/project.types.ts +58 -0
- package/libs/project-provider/tsconfig.lib.json +9 -0
- package/nest-cli.json +114 -0
- package/package.json +206 -0
- package/scripts/agentmanager.mjs +1126 -0
- package/scripts/monolith-daemon-run.mjs +77 -0
- package/scripts/monolith-daemon-run.sh +27 -0
- package/tsconfig.json +35 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export { DomainError } from '@app/project-provider';
|
|
2
|
+
import { DomainError } from '@app/project-provider';
|
|
3
|
+
|
|
4
|
+
export class SessionNotFoundError extends DomainError {
|
|
5
|
+
constructor() {
|
|
6
|
+
super('Session not found', 404);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export class InvalidSessionStateError extends DomainError {
|
|
11
|
+
constructor(message: string) {
|
|
12
|
+
super(message, 409);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DomainError } from './domain.error';
|
|
2
|
+
export declare class LlmError extends DomainError {
|
|
3
|
+
constructor(message: string, statusCode?: number);
|
|
4
|
+
}
|
|
5
|
+
export declare class LlmNotConfiguredError extends LlmError {
|
|
6
|
+
constructor();
|
|
7
|
+
}
|
|
8
|
+
export declare class LlmRequestFailedError extends LlmError {
|
|
9
|
+
constructor(message: string);
|
|
10
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3
|
+
exports.LlmRequestFailedError =
|
|
4
|
+
exports.LlmNotConfiguredError =
|
|
5
|
+
exports.LlmError =
|
|
6
|
+
void 0;
|
|
7
|
+
const domain_error_1 = require('./domain.error');
|
|
8
|
+
class LlmError extends domain_error_1.DomainError {
|
|
9
|
+
constructor(message, statusCode = 502) {
|
|
10
|
+
super(message, statusCode);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.LlmError = LlmError;
|
|
14
|
+
class LlmNotConfiguredError extends LlmError {
|
|
15
|
+
constructor() {
|
|
16
|
+
super('LLM provider is not configured', 501);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.LlmNotConfiguredError = LlmNotConfiguredError;
|
|
20
|
+
class LlmRequestFailedError extends LlmError {
|
|
21
|
+
constructor(message) {
|
|
22
|
+
super(message, 502);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.LlmRequestFailedError = LlmRequestFailedError;
|
|
26
|
+
//# sourceMappingURL=llm.errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm.errors.js","sourceRoot":"","sources":["llm.errors.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAE7C,MAAa,QAAS,SAAQ,0BAAW;IACvC,YAAY,OAAe,EAAE,aAAqB,GAAG;QACnD,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC7B,CAAC;CACF;AAJD,4BAIC;AAED,MAAa,qBAAsB,SAAQ,QAAQ;IACjD;QACE,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;CACF;AAJD,sDAIC;AAED,MAAa,qBAAsB,SAAQ,QAAQ;IACjD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACtB,CAAC;CACF;AAJD,sDAIC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { DomainError } from './domain.error';
|
|
2
|
+
|
|
3
|
+
export class LlmError extends DomainError {
|
|
4
|
+
constructor(message: string, statusCode: number = 502) {
|
|
5
|
+
super(message, statusCode);
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export class LlmNotConfiguredError extends LlmError {
|
|
10
|
+
constructor() {
|
|
11
|
+
super('LLM provider is not configured', 501);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export class LlmRequestFailedError extends LlmError {
|
|
16
|
+
constructor(message: string) {
|
|
17
|
+
super(message, 502);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
export { AgentcraftModule } from './agentcraft.module';
|
|
2
|
+
export type { LlmConfig } from './agentcraft.module';
|
|
3
|
+
export { LLM_PROVIDER, CRAFT_LLM_PROVIDER } from './constants';
|
|
4
|
+
export type {
|
|
5
|
+
LlmRequest,
|
|
6
|
+
LlmResponse,
|
|
7
|
+
ChatMessage,
|
|
8
|
+
ContentBlock,
|
|
9
|
+
ChatRequest,
|
|
10
|
+
ChatResponse,
|
|
11
|
+
} from './types/llm.types';
|
|
12
|
+
export type { Signal, SignalKind, SignalPriority } from './types/signal.types';
|
|
13
|
+
export {
|
|
14
|
+
PipelineStep,
|
|
15
|
+
ReviewAction,
|
|
16
|
+
TestFailureAction,
|
|
17
|
+
} from './types/pipeline.types';
|
|
18
|
+
export type {
|
|
19
|
+
StepDefinition,
|
|
20
|
+
ConversationMessage,
|
|
21
|
+
PipelineState,
|
|
22
|
+
CraftConfig,
|
|
23
|
+
} from './types/pipeline.types';
|
|
24
|
+
export type {
|
|
25
|
+
RegistryEntry,
|
|
26
|
+
RegistrySearchResult,
|
|
27
|
+
} from './types/resolver.types';
|
|
28
|
+
export type {
|
|
29
|
+
LlmProvider,
|
|
30
|
+
CraftLlmProvider,
|
|
31
|
+
} from './interfaces/llm-provider.interface';
|
|
32
|
+
export { AnthropicLlmService } from './services/anthropic-llm.service';
|
|
33
|
+
export { OpenaiLlmService } from './services/openai-llm.service';
|
|
34
|
+
export { CraftLlmAdapterService } from './services/craft-llm-adapter.service';
|
|
35
|
+
export { ArchitectLoopFactory } from './services/architect-loop.service';
|
|
36
|
+
export type {
|
|
37
|
+
ArchitectLoop,
|
|
38
|
+
ArchitectLoopConfig,
|
|
39
|
+
} from './services/architect-loop.service';
|
|
40
|
+
export {
|
|
41
|
+
PipelineStepsService,
|
|
42
|
+
STEP_DEFINITIONS,
|
|
43
|
+
} from './services/pipeline-steps.service';
|
|
44
|
+
export { PipelineStateService } from './services/pipeline-state.service';
|
|
45
|
+
export { OutputParserService } from './services/output-parser.service';
|
|
46
|
+
export type { ParsedFile } from './services/output-parser.service';
|
|
47
|
+
export { CraftConfigService } from './services/craft-config.service';
|
|
48
|
+
export {
|
|
49
|
+
ApiAdapterService,
|
|
50
|
+
ApiAdapterFactory,
|
|
51
|
+
} from './services/api-adapter.service';
|
|
52
|
+
export type { SSEEvent, WaitingFor } from './services/api-adapter.service';
|
|
53
|
+
export { SpecFetcherService } from './services/spec-fetcher.service';
|
|
54
|
+
export { RegistryClientService } from './services/registry-client.service';
|
|
55
|
+
export {
|
|
56
|
+
DomainError,
|
|
57
|
+
SessionNotFoundError,
|
|
58
|
+
InvalidSessionStateError,
|
|
59
|
+
} from './errors/domain.error';
|
|
60
|
+
export {
|
|
61
|
+
LlmError,
|
|
62
|
+
LlmNotConfiguredError,
|
|
63
|
+
LlmRequestFailedError,
|
|
64
|
+
} from './errors/llm.errors';
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
3
|
+
exports.LlmRequestFailedError =
|
|
4
|
+
exports.LlmNotConfiguredError =
|
|
5
|
+
exports.LlmError =
|
|
6
|
+
exports.InvalidSessionStateError =
|
|
7
|
+
exports.SessionNotFoundError =
|
|
8
|
+
exports.DomainError =
|
|
9
|
+
exports.RegistryClientService =
|
|
10
|
+
exports.SpecFetcherService =
|
|
11
|
+
exports.ApiAdapterFactory =
|
|
12
|
+
exports.ApiAdapterService =
|
|
13
|
+
exports.CraftConfigService =
|
|
14
|
+
exports.OutputParserService =
|
|
15
|
+
exports.PipelineStateService =
|
|
16
|
+
exports.STEP_DEFINITIONS =
|
|
17
|
+
exports.PipelineStepsService =
|
|
18
|
+
exports.ArchitectLoopFactory =
|
|
19
|
+
exports.CraftLlmAdapterService =
|
|
20
|
+
exports.OpenaiLlmService =
|
|
21
|
+
exports.AnthropicLlmService =
|
|
22
|
+
exports.TestFailureAction =
|
|
23
|
+
exports.ReviewAction =
|
|
24
|
+
exports.PipelineStep =
|
|
25
|
+
exports.CRAFT_LLM_PROVIDER =
|
|
26
|
+
exports.LLM_PROVIDER =
|
|
27
|
+
exports.AgentcraftModule =
|
|
28
|
+
void 0;
|
|
29
|
+
var agentcraft_module_1 = require('./agentcraft.module');
|
|
30
|
+
Object.defineProperty(exports, 'AgentcraftModule', {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return agentcraft_module_1.AgentcraftModule;
|
|
34
|
+
},
|
|
35
|
+
});
|
|
36
|
+
var constants_1 = require('./constants');
|
|
37
|
+
Object.defineProperty(exports, 'LLM_PROVIDER', {
|
|
38
|
+
enumerable: true,
|
|
39
|
+
get: function () {
|
|
40
|
+
return constants_1.LLM_PROVIDER;
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
Object.defineProperty(exports, 'CRAFT_LLM_PROVIDER', {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return constants_1.CRAFT_LLM_PROVIDER;
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
var pipeline_types_1 = require('./types/pipeline.types');
|
|
50
|
+
Object.defineProperty(exports, 'PipelineStep', {
|
|
51
|
+
enumerable: true,
|
|
52
|
+
get: function () {
|
|
53
|
+
return pipeline_types_1.PipelineStep;
|
|
54
|
+
},
|
|
55
|
+
});
|
|
56
|
+
Object.defineProperty(exports, 'ReviewAction', {
|
|
57
|
+
enumerable: true,
|
|
58
|
+
get: function () {
|
|
59
|
+
return pipeline_types_1.ReviewAction;
|
|
60
|
+
},
|
|
61
|
+
});
|
|
62
|
+
Object.defineProperty(exports, 'TestFailureAction', {
|
|
63
|
+
enumerable: true,
|
|
64
|
+
get: function () {
|
|
65
|
+
return pipeline_types_1.TestFailureAction;
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
var anthropic_llm_service_1 = require('./services/anthropic-llm.service');
|
|
69
|
+
Object.defineProperty(exports, 'AnthropicLlmService', {
|
|
70
|
+
enumerable: true,
|
|
71
|
+
get: function () {
|
|
72
|
+
return anthropic_llm_service_1.AnthropicLlmService;
|
|
73
|
+
},
|
|
74
|
+
});
|
|
75
|
+
var openai_llm_service_1 = require('./services/openai-llm.service');
|
|
76
|
+
Object.defineProperty(exports, 'OpenaiLlmService', {
|
|
77
|
+
enumerable: true,
|
|
78
|
+
get: function () {
|
|
79
|
+
return openai_llm_service_1.OpenaiLlmService;
|
|
80
|
+
},
|
|
81
|
+
});
|
|
82
|
+
var craft_llm_adapter_service_1 = require('./services/craft-llm-adapter.service');
|
|
83
|
+
Object.defineProperty(exports, 'CraftLlmAdapterService', {
|
|
84
|
+
enumerable: true,
|
|
85
|
+
get: function () {
|
|
86
|
+
return craft_llm_adapter_service_1.CraftLlmAdapterService;
|
|
87
|
+
},
|
|
88
|
+
});
|
|
89
|
+
var architect_loop_service_1 = require('./services/architect-loop.service');
|
|
90
|
+
Object.defineProperty(exports, 'ArchitectLoopFactory', {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: function () {
|
|
93
|
+
return architect_loop_service_1.ArchitectLoopFactory;
|
|
94
|
+
},
|
|
95
|
+
});
|
|
96
|
+
var pipeline_steps_service_1 = require('./services/pipeline-steps.service');
|
|
97
|
+
Object.defineProperty(exports, 'PipelineStepsService', {
|
|
98
|
+
enumerable: true,
|
|
99
|
+
get: function () {
|
|
100
|
+
return pipeline_steps_service_1.PipelineStepsService;
|
|
101
|
+
},
|
|
102
|
+
});
|
|
103
|
+
Object.defineProperty(exports, 'STEP_DEFINITIONS', {
|
|
104
|
+
enumerable: true,
|
|
105
|
+
get: function () {
|
|
106
|
+
return pipeline_steps_service_1.STEP_DEFINITIONS;
|
|
107
|
+
},
|
|
108
|
+
});
|
|
109
|
+
var pipeline_state_service_1 = require('./services/pipeline-state.service');
|
|
110
|
+
Object.defineProperty(exports, 'PipelineStateService', {
|
|
111
|
+
enumerable: true,
|
|
112
|
+
get: function () {
|
|
113
|
+
return pipeline_state_service_1.PipelineStateService;
|
|
114
|
+
},
|
|
115
|
+
});
|
|
116
|
+
var output_parser_service_1 = require('./services/output-parser.service');
|
|
117
|
+
Object.defineProperty(exports, 'OutputParserService', {
|
|
118
|
+
enumerable: true,
|
|
119
|
+
get: function () {
|
|
120
|
+
return output_parser_service_1.OutputParserService;
|
|
121
|
+
},
|
|
122
|
+
});
|
|
123
|
+
var craft_config_service_1 = require('./services/craft-config.service');
|
|
124
|
+
Object.defineProperty(exports, 'CraftConfigService', {
|
|
125
|
+
enumerable: true,
|
|
126
|
+
get: function () {
|
|
127
|
+
return craft_config_service_1.CraftConfigService;
|
|
128
|
+
},
|
|
129
|
+
});
|
|
130
|
+
var api_adapter_service_1 = require('./services/api-adapter.service');
|
|
131
|
+
Object.defineProperty(exports, 'ApiAdapterService', {
|
|
132
|
+
enumerable: true,
|
|
133
|
+
get: function () {
|
|
134
|
+
return api_adapter_service_1.ApiAdapterService;
|
|
135
|
+
},
|
|
136
|
+
});
|
|
137
|
+
Object.defineProperty(exports, 'ApiAdapterFactory', {
|
|
138
|
+
enumerable: true,
|
|
139
|
+
get: function () {
|
|
140
|
+
return api_adapter_service_1.ApiAdapterFactory;
|
|
141
|
+
},
|
|
142
|
+
});
|
|
143
|
+
var spec_fetcher_service_1 = require('./services/spec-fetcher.service');
|
|
144
|
+
Object.defineProperty(exports, 'SpecFetcherService', {
|
|
145
|
+
enumerable: true,
|
|
146
|
+
get: function () {
|
|
147
|
+
return spec_fetcher_service_1.SpecFetcherService;
|
|
148
|
+
},
|
|
149
|
+
});
|
|
150
|
+
var registry_client_service_1 = require('./services/registry-client.service');
|
|
151
|
+
Object.defineProperty(exports, 'RegistryClientService', {
|
|
152
|
+
enumerable: true,
|
|
153
|
+
get: function () {
|
|
154
|
+
return registry_client_service_1.RegistryClientService;
|
|
155
|
+
},
|
|
156
|
+
});
|
|
157
|
+
var domain_error_1 = require('./errors/domain.error');
|
|
158
|
+
Object.defineProperty(exports, 'DomainError', {
|
|
159
|
+
enumerable: true,
|
|
160
|
+
get: function () {
|
|
161
|
+
return domain_error_1.DomainError;
|
|
162
|
+
},
|
|
163
|
+
});
|
|
164
|
+
Object.defineProperty(exports, 'SessionNotFoundError', {
|
|
165
|
+
enumerable: true,
|
|
166
|
+
get: function () {
|
|
167
|
+
return domain_error_1.SessionNotFoundError;
|
|
168
|
+
},
|
|
169
|
+
});
|
|
170
|
+
Object.defineProperty(exports, 'InvalidSessionStateError', {
|
|
171
|
+
enumerable: true,
|
|
172
|
+
get: function () {
|
|
173
|
+
return domain_error_1.InvalidSessionStateError;
|
|
174
|
+
},
|
|
175
|
+
});
|
|
176
|
+
var llm_errors_1 = require('./errors/llm.errors');
|
|
177
|
+
Object.defineProperty(exports, 'LlmError', {
|
|
178
|
+
enumerable: true,
|
|
179
|
+
get: function () {
|
|
180
|
+
return llm_errors_1.LlmError;
|
|
181
|
+
},
|
|
182
|
+
});
|
|
183
|
+
Object.defineProperty(exports, 'LlmNotConfiguredError', {
|
|
184
|
+
enumerable: true,
|
|
185
|
+
get: function () {
|
|
186
|
+
return llm_errors_1.LlmNotConfiguredError;
|
|
187
|
+
},
|
|
188
|
+
});
|
|
189
|
+
Object.defineProperty(exports, 'LlmRequestFailedError', {
|
|
190
|
+
enumerable: true,
|
|
191
|
+
get: function () {
|
|
192
|
+
return llm_errors_1.LlmRequestFailedError;
|
|
193
|
+
},
|
|
194
|
+
});
|
|
195
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AACA,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AAIzB,yCAA+D;AAAtD,yGAAA,YAAY,OAAA;AAAE,+GAAA,kBAAkB,OAAA;AAgBzC,yDAIgC;AAH9B,8GAAA,YAAY,OAAA;AACZ,8GAAA,YAAY,OAAA;AACZ,mHAAA,iBAAiB,OAAA;AAsBnB,0EAAuE;AAA9D,4HAAA,mBAAmB,OAAA;AAC5B,oEAAiE;AAAxD,sHAAA,gBAAgB,OAAA;AACzB,kFAA8E;AAArE,mIAAA,sBAAsB,OAAA;AAG/B,4EAAyE;AAAhE,8HAAA,oBAAoB,OAAA;AAO7B,4EAG2C;AAFzC,8HAAA,oBAAoB,OAAA;AACpB,0HAAA,gBAAgB,OAAA;AAElB,4EAAyE;AAAhE,8HAAA,oBAAoB,OAAA;AAC7B,0EAAuE;AAA9D,4HAAA,mBAAmB,OAAA;AAI5B,wEAAqE;AAA5D,0HAAA,kBAAkB,OAAA;AAG3B,sEAGwC;AAFtC,wHAAA,iBAAiB,OAAA;AACjB,wHAAA,iBAAiB,OAAA;AAKnB,wEAAqE;AAA5D,0HAAA,kBAAkB,OAAA;AAC3B,8EAA2E;AAAlE,gIAAA,qBAAqB,OAAA;AAG9B,sDAI+B;AAH7B,2GAAA,WAAW,OAAA;AACX,oHAAA,oBAAoB,OAAA;AACpB,wHAAA,wBAAwB,OAAA;AAE1B,kDAI6B;AAH3B,sGAAA,QAAQ,OAAA;AACR,mHAAA,qBAAqB,OAAA;AACrB,mHAAA,qBAAqB,OAAA"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
// Module
|
|
2
|
+
export { AgentcraftModule } from './agentcraft.module';
|
|
3
|
+
export type { LlmConfig } from './agentcraft.module';
|
|
4
|
+
|
|
5
|
+
// Constants
|
|
6
|
+
export { LLM_PROVIDER, CRAFT_LLM_PROVIDER } from './constants';
|
|
7
|
+
|
|
8
|
+
// Types — LLM
|
|
9
|
+
export type {
|
|
10
|
+
LlmRequest,
|
|
11
|
+
LlmResponse,
|
|
12
|
+
ChatMessage,
|
|
13
|
+
ContentBlock,
|
|
14
|
+
ChatRequest,
|
|
15
|
+
ChatResponse,
|
|
16
|
+
ToolDefinition,
|
|
17
|
+
ToolCall,
|
|
18
|
+
} from './types/llm.types';
|
|
19
|
+
|
|
20
|
+
// Types — Signal
|
|
21
|
+
export type { Signal, SignalKind, SignalPriority } from './types/signal.types';
|
|
22
|
+
|
|
23
|
+
// Types — Pipeline
|
|
24
|
+
export {
|
|
25
|
+
PipelineStep,
|
|
26
|
+
ReviewAction,
|
|
27
|
+
TestFailureAction,
|
|
28
|
+
} from './types/pipeline.types';
|
|
29
|
+
export type {
|
|
30
|
+
StepDefinition,
|
|
31
|
+
ConversationMessage,
|
|
32
|
+
PipelineState,
|
|
33
|
+
CraftConfig,
|
|
34
|
+
} from './types/pipeline.types';
|
|
35
|
+
|
|
36
|
+
// Types — Resolver
|
|
37
|
+
export type {
|
|
38
|
+
RegistryEntry,
|
|
39
|
+
RegistrySearchResult,
|
|
40
|
+
} from './types/resolver.types';
|
|
41
|
+
|
|
42
|
+
// Types — Autonomous
|
|
43
|
+
export type {
|
|
44
|
+
PlanStepKind,
|
|
45
|
+
AutonomousMode,
|
|
46
|
+
ResolverDirective,
|
|
47
|
+
PlanStep,
|
|
48
|
+
Plan,
|
|
49
|
+
StepResult,
|
|
50
|
+
ExecutionContext,
|
|
51
|
+
AutonomousRunConfig,
|
|
52
|
+
ExecutorCallbacks,
|
|
53
|
+
} from './types/autonomous.types';
|
|
54
|
+
|
|
55
|
+
// Types — Architect
|
|
56
|
+
export type {
|
|
57
|
+
SubAppDefinition,
|
|
58
|
+
DecompositionResult,
|
|
59
|
+
AppRequirements,
|
|
60
|
+
RequirementsResult,
|
|
61
|
+
FeatureAnnotation,
|
|
62
|
+
EntitySpec,
|
|
63
|
+
RelationshipSpec,
|
|
64
|
+
WorkflowSpec,
|
|
65
|
+
EventSpec,
|
|
66
|
+
AgentSpec,
|
|
67
|
+
AppSpec,
|
|
68
|
+
DesignResult,
|
|
69
|
+
WidgetBlueprint,
|
|
70
|
+
PageBlueprint,
|
|
71
|
+
NavigationItem,
|
|
72
|
+
NavigationGroup,
|
|
73
|
+
UIBlueprint,
|
|
74
|
+
GeneratedSources,
|
|
75
|
+
KBChangeEvent,
|
|
76
|
+
WatcherOptions,
|
|
77
|
+
} from './types/architect.types';
|
|
78
|
+
|
|
79
|
+
// Interfaces
|
|
80
|
+
export type {
|
|
81
|
+
LlmProvider,
|
|
82
|
+
CraftLlmProvider,
|
|
83
|
+
} from './interfaces/llm-provider.interface';
|
|
84
|
+
|
|
85
|
+
// Services — LLM
|
|
86
|
+
export { AnthropicLlmService } from './services/anthropic-llm.service';
|
|
87
|
+
export { OpenaiLlmService } from './services/openai-llm.service';
|
|
88
|
+
export { CraftLlmAdapterService } from './services/craft-llm-adapter.service';
|
|
89
|
+
export { AnthropicCraftLlmService } from './services/anthropic-craft-llm.service';
|
|
90
|
+
|
|
91
|
+
// Services — Architect
|
|
92
|
+
export { ArchitectLoopFactory } from './services/architect-loop.service';
|
|
93
|
+
export type {
|
|
94
|
+
ArchitectLoop,
|
|
95
|
+
ArchitectLoopConfig,
|
|
96
|
+
} from './services/architect-loop.service';
|
|
97
|
+
|
|
98
|
+
// Services — Architect Phases
|
|
99
|
+
export { DecomposerService } from './services/decomposer.service';
|
|
100
|
+
export { RequirementsGeneratorService } from './services/requirements-generator.service';
|
|
101
|
+
export { DesignGeneratorService } from './services/design-generator.service';
|
|
102
|
+
export { UIBlueprintGeneratorService } from './services/ui-blueprint-generator.service';
|
|
103
|
+
export { ReadmeGeneratorService } from './services/readme-generator.service';
|
|
104
|
+
export { KbWatcherService } from './services/kb-watcher.service';
|
|
105
|
+
|
|
106
|
+
// Services — Autonomous
|
|
107
|
+
export { PlannerService } from './services/planner.service';
|
|
108
|
+
export { ExecutorService } from './services/executor.service';
|
|
109
|
+
export { AutonomousRunnerService } from './services/autonomous-runner.service';
|
|
110
|
+
|
|
111
|
+
// Services — Pipeline
|
|
112
|
+
export {
|
|
113
|
+
PipelineStepsService,
|
|
114
|
+
STEP_DEFINITIONS,
|
|
115
|
+
} from './services/pipeline-steps.service';
|
|
116
|
+
export { PipelineStateService } from './services/pipeline-state.service';
|
|
117
|
+
export { OutputParserService } from './services/output-parser.service';
|
|
118
|
+
export type { ParsedFile } from './services/output-parser.service';
|
|
119
|
+
|
|
120
|
+
// Services — Config
|
|
121
|
+
export { CraftConfigService } from './services/craft-config.service';
|
|
122
|
+
|
|
123
|
+
// Services — IO Adapter
|
|
124
|
+
export {
|
|
125
|
+
ApiAdapterService,
|
|
126
|
+
ApiAdapterFactory,
|
|
127
|
+
} from './services/api-adapter.service';
|
|
128
|
+
export type { SSEEvent, WaitingFor } from './services/api-adapter.service';
|
|
129
|
+
|
|
130
|
+
// Services — Resolver
|
|
131
|
+
export { SpecFetcherService } from './services/spec-fetcher.service';
|
|
132
|
+
export { RegistryClientService } from './services/registry-client.service';
|
|
133
|
+
|
|
134
|
+
// Utilities
|
|
135
|
+
export { loadAllKBDocuments } from './utils/kb-loader';
|
|
136
|
+
export {
|
|
137
|
+
normalizeGeneratedCode,
|
|
138
|
+
checkCommonErrors,
|
|
139
|
+
validateCode,
|
|
140
|
+
basicValidation,
|
|
141
|
+
} from './utils/validator';
|
|
142
|
+
export { parseAssemblyOutput, writeAppFiles } from './utils/output-writer';
|
|
143
|
+
export { fetchSpec } from './utils/spec-fetcher';
|
|
144
|
+
export { trimSpec } from './utils/spec-trimmer';
|
|
145
|
+
export {
|
|
146
|
+
kebabToPascalCase,
|
|
147
|
+
pascalToKebabCase,
|
|
148
|
+
extractModuleName,
|
|
149
|
+
extractEntityNames,
|
|
150
|
+
stripModuleLine,
|
|
151
|
+
} from './utils/text-utils';
|
|
152
|
+
|
|
153
|
+
// DTOs
|
|
154
|
+
export {
|
|
155
|
+
SubmitActionBaseSchema,
|
|
156
|
+
SubmitActionSchema,
|
|
157
|
+
SubmitActionDto,
|
|
158
|
+
SubmitResolverActionDto,
|
|
159
|
+
} from './dto/submit-action.dto';
|
|
160
|
+
|
|
161
|
+
// Errors
|
|
162
|
+
export {
|
|
163
|
+
DomainError,
|
|
164
|
+
SessionNotFoundError,
|
|
165
|
+
InvalidSessionStateError,
|
|
166
|
+
} from './errors/domain.error';
|
|
167
|
+
export {
|
|
168
|
+
LlmError,
|
|
169
|
+
LlmNotConfiguredError,
|
|
170
|
+
LlmRequestFailedError,
|
|
171
|
+
} from './errors/llm.errors';
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
export const step6DataModelInstructions = `You are the sixth agent in a pipeline that generates agentlang applications. Your job is to generate a valid, parseable agentlang data model definition from the requirements, domain objects, and API specification produced by the previous agents.
|
|
2
|
+
|
|
3
|
+
## Input Context
|
|
4
|
+
|
|
5
|
+
The requirements analysis:
|
|
6
|
+
|
|
7
|
+
<file>requirementsAnalysis.md</file>
|
|
8
|
+
|
|
9
|
+
The core domain objects:
|
|
10
|
+
|
|
11
|
+
<file>coreObjects.md</file>
|
|
12
|
+
|
|
13
|
+
The API specification:
|
|
14
|
+
|
|
15
|
+
<file>apiSpec.md</file>
|
|
16
|
+
|
|
17
|
+
## Resolver Context (if applicable)
|
|
18
|
+
|
|
19
|
+
<file>?resolverMeta.md</file>
|
|
20
|
+
|
|
21
|
+
If resolver metadata is shown above, a resolver module already handles these entities and their CRUD bindings. In the core module:
|
|
22
|
+
- Do NOT redefine resolver entities (they already exist in the resolver module)
|
|
23
|
+
- Do NOT write \`resolver\` blocks — the resolver module already defines all resolver bindings with the correct import aliases
|
|
24
|
+
- You MAY reference resolver entities in relationships and workflows using fully-qualified names (e.g. \`Resolvers.Petstore/Pet\`)
|
|
25
|
+
|
|
26
|
+
## Your Role
|
|
27
|
+
|
|
28
|
+
You translate the identified domain objects and their relationships into a syntactically valid agentlang module definition. Your output will be **automatically validated by the agentlang parser**. If your output contains syntax errors, you will receive the error details and must fix them.
|
|
29
|
+
|
|
30
|
+
## CRITICAL: Output Requirements
|
|
31
|
+
|
|
32
|
+
Your response must contain ONLY a valid agentlang module definition. Do not include any explanatory text, markdown formatting, or code fences. The entire response must be parseable agentlang code starting with \`module\`.
|
|
33
|
+
|
|
34
|
+
**IMPORTANT**: Your output is validated by the agentlang parser. If validation fails, you will receive the parse errors and must correct the code. Pay careful attention to syntax.
|
|
35
|
+
|
|
36
|
+
## How to Respond
|
|
37
|
+
|
|
38
|
+
### On the FIRST message:
|
|
39
|
+
|
|
40
|
+
Generate the complete agentlang data model as a module definition. Use the domain objects, their attributes, and relationships from the input context.
|
|
41
|
+
|
|
42
|
+
### On FOLLOW-UP messages:
|
|
43
|
+
|
|
44
|
+
The user may request changes (add entities, modify attributes, change relationships). Regenerate the complete module with the requested changes. Always output the full module, not just the changed parts.
|
|
45
|
+
|
|
46
|
+
### On VALIDATION FAILURE:
|
|
47
|
+
|
|
48
|
+
If your output fails parsing, you will receive an error like:
|
|
49
|
+
\`Validation for your last response failed with this result: {"status":"error","reason":"..."}\`
|
|
50
|
+
|
|
51
|
+
Read the error carefully, identify the syntax issue, and output the corrected full module definition.
|
|
52
|
+
|
|
53
|
+
## Agentlang Data Model Syntax
|
|
54
|
+
|
|
55
|
+
### Module Declaration
|
|
56
|
+
|
|
57
|
+
Every module starts with:
|
|
58
|
+
\`\`\`
|
|
59
|
+
module <AppName>.core
|
|
60
|
+
\`\`\`
|
|
61
|
+
|
|
62
|
+
### Entity Definition
|
|
63
|
+
|
|
64
|
+
\`\`\`
|
|
65
|
+
entity <EntityName> {
|
|
66
|
+
<attrName> <Type> [properties],
|
|
67
|
+
<attrName> <Type> [properties]
|
|
68
|
+
}
|
|
69
|
+
\`\`\`
|
|
70
|
+
|
|
71
|
+
### Attribute Types
|
|
72
|
+
|
|
73
|
+
Valid types: String, Int, Number, Decimal, Float, Email, Date, Time, DateTime, Boolean, UUID, URL, Password, Map, Any.
|
|
74
|
+
Array types use the [] suffix: String[], Int[], etc.
|
|
75
|
+
|
|
76
|
+
**IMPORTANT**: There is NO \`List\` type in agentlang. Always use typed arrays instead. If an attribute holds multiple values, use \`String[]\`, \`Int[]\`, or a reference to another entity with \`[]\` (e.g. \`Tag[]\` where Tag is a defined entity/record).
|
|
77
|
+
|
|
78
|
+
### Attribute Properties
|
|
79
|
+
|
|
80
|
+
- \`@id\` -- uniquely identifies an instance (required: every entity must have one)
|
|
81
|
+
- \`@default(<value>)\` -- default value. Examples: \`@default(uuid())\`, \`@default(now())\`, \`@default(true)\`, \`@default(0)\`
|
|
82
|
+
- **UUID attributes MUST always include \`@default(uuid())\`**
|
|
83
|
+
- **DateTime attributes MUST always include \`@default(now())\`**
|
|
84
|
+
- \`@optional\` -- value is not required
|
|
85
|
+
- \`@unique\` -- value must be unique across all instances
|
|
86
|
+
- \`@indexed\` -- optimize queries on this attribute
|
|
87
|
+
- \`@enum("val1", "val2", ...)\` -- value must be one of the listed options
|
|
88
|
+
- \`@ref(<Entity>)\` -- foreign key reference. **IMPORTANT**: \`@ref\` replaces the type — do NOT specify a type before \`@ref\`. Write \`attrName @ref(Entity)\`, NOT \`attrName UUID @ref(Entity)\`. Examples:
|
|
89
|
+
- \`authorId @ref(Author)\` — references the Author entity's @id field
|
|
90
|
+
- \`email @ref(Resource.resEmail) @optional\` — references a specific attribute
|
|
91
|
+
- \`petId @ref(Resolvers.Petstore/Pet)\` — references an entity in another module
|
|
92
|
+
|
|
93
|
+
### Relationship Definition
|
|
94
|
+
|
|
95
|
+
Two types of relationships:
|
|
96
|
+
|
|
97
|
+
**Contains** (hierarchical parent-child):
|
|
98
|
+
\`\`\`
|
|
99
|
+
relationship <RelName> contains (<ParentEntity>, <ChildEntity>)
|
|
100
|
+
\`\`\`
|
|
101
|
+
|
|
102
|
+
**Between** (graph-like connections):
|
|
103
|
+
\`\`\`
|
|
104
|
+
relationship <RelName> between (<EntityA>, <EntityB>)
|
|
105
|
+
relationship <RelName> between (<EntityA>, <EntityB>) @one_one
|
|
106
|
+
relationship <RelName> between (<EntityA>, <EntityB>) @one_many
|
|
107
|
+
\`\`\`
|
|
108
|
+
Default between is many-to-many. Use @one_one or @one_many as needed.
|
|
109
|
+
|
|
110
|
+
### Resolver Blocks — Do NOT Generate
|
|
111
|
+
|
|
112
|
+
Do NOT write \`resolver\` blocks or resolver related \`import\` statements in this module. Resolver bindings are handled by a separate resolver generation step. This module should only contain entity definitions and relationship definitions.
|
|
113
|
+
|
|
114
|
+
## Reserved Words — Do NOT Use as Names
|
|
115
|
+
|
|
116
|
+
Agentlang reserves certain keywords. You MUST NOT use any of the following as entity names, record names, attribute names, or relationship names. If your domain has a concept that matches a reserved word, rename it (e.g. \`Event\` → \`CalendarEvent\`, \`Flow\` → \`AppFlow\`, \`Agent\` → \`AIAgent\`, \`import\` → \`importItem\`, \`delete\` → \`isDeleted\`, \`record\` → \`entry\`).
|
|
117
|
+
|
|
118
|
+
**Definition keywords:** \`module\`, \`import\`, \`entity\`, \`event\`, \`record\`, \`relationship\`, \`workflow\`, \`agent\`, \`resolver\`, \`flow\`, \`decision\`, \`scenario\`, \`directive\`, \`glossaryEntry\`, \`eval\`
|
|
119
|
+
|
|
120
|
+
**Control flow and operators:** \`if\`, \`else\`, \`for\`, \`in\`, \`return\`, \`throw\`, \`await\`, \`delete\`, \`purge\`, \`case\`, \`not\`, \`true\`, \`false\`, \`or\`, \`and\`, \`like\`, \`between\`
|
|
121
|
+
|
|
122
|
+
**CRUD and schema keywords:** \`create\`, \`update\`, \`query\`, \`upsert\`, \`contains\`, \`extends\`, \`where\`, \`roles\`, \`allow\`, \`subscribe\`, \`backoff\`, \`attempts\`
|
|
123
|
+
|
|
124
|
+
## Common Syntax Rules
|
|
125
|
+
|
|
126
|
+
- **Attributes MUST be separated by commas**. The last attribute does NOT need a trailing comma. For example:
|
|
127
|
+
|
|
128
|
+
WRONG (missing commas):
|
|
129
|
+
\`\`\`
|
|
130
|
+
entity Category {
|
|
131
|
+
id Int @id
|
|
132
|
+
name String
|
|
133
|
+
}
|
|
134
|
+
\`\`\`
|
|
135
|
+
|
|
136
|
+
CORRECT:
|
|
137
|
+
\`\`\`
|
|
138
|
+
entity Category {
|
|
139
|
+
id Int @id,
|
|
140
|
+
name String
|
|
141
|
+
}
|
|
142
|
+
\`\`\`
|
|
143
|
+
|
|
144
|
+
- **Structures with no attributes MUST be defined with \`{}\`**. For example: \`@public event getAllEmployees {}\`, \`record EmptyPayload {}\`. Never omit the braces.
|
|
145
|
+
- Property annotations (@id, @optional, etc.) follow the type
|
|
146
|
+
- Entity and relationship names must be valid identifiers (letters, digits, no spaces)
|
|
147
|
+
- Module-qualified entity references use the format: \`ModuleName/EntityName\`
|
|
148
|
+
- String literals use double quotes: "value"
|
|
149
|
+
|
|
150
|
+
## Example
|
|
151
|
+
|
|
152
|
+
For a Personal Finance Tracker app:
|
|
153
|
+
|
|
154
|
+
module Finance.core
|
|
155
|
+
|
|
156
|
+
entity Account {
|
|
157
|
+
id UUID @id @default(uuid()),
|
|
158
|
+
name String,
|
|
159
|
+
type @enum("bank", "cash", "credit"),
|
|
160
|
+
balance Decimal @default(0),
|
|
161
|
+
createdAt DateTime @default(now())
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
entity Transaction {
|
|
165
|
+
id UUID @id @default(uuid()),
|
|
166
|
+
accountId @ref(Account),
|
|
167
|
+
categoryId @ref(Category) @optional,
|
|
168
|
+
date DateTime @default(now()),
|
|
169
|
+
description String,
|
|
170
|
+
amount Decimal,
|
|
171
|
+
type @enum("income", "expense")
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
entity Category {
|
|
175
|
+
id UUID @id @default(uuid()),
|
|
176
|
+
name String @unique
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
relationship AccountTransaction between (Account, Transaction) @one_many
|
|
180
|
+
relationship TransactionCategory between (Transaction, Category) @one_many
|
|
181
|
+
`;
|