Skip to content

feat: Phase 5 - Console, Deployment, v1.0 - full platform release - #2

Merged
mmdverse merged 3 commits into
mainfrom
feat/phase5-console-deployment-docs
Sep 24, 2026
Merged

mmdverse merged 3 commits into
mainfrom
feat/phase5-console-deployment-docs

Conversation

@mmdverse

Copy link
Copy Markdown
Owner

AgentMesh v1.0 — Full Platform Release

This PR completes Phase 5 + v1.0 Final per AgentMesh spec (45 sections).

Console (Production Web Console)

  • Next.js 14 + TypeScript + Tailwind + shadcn/ui + TanStack Query/Table + React Flow
  • 19 routes: /, /agents, /agents/[id], /artifacts, /configuration, /credentials, /health, /mcp, /messages, /organizations, /policies, /projects, /routes, /security, /skills, /tasks, /tasks/[id], /tasks/[id]/graph (live React Flow graph), /telemetry
  • Infrastructure-grade UI, not generic admin
  • Build verified green: 26.7s, First Load JS 87.3kB shared, 19 routes dynamic/static
  • API client in lib/api.ts with tenant headers, polling, SSE streaming

Deployment (Production-Grade)

  • Dockerfiles rewritten multi-stage for gateway/control-plane/console: copy all 16 packages + 4 adapters, pnpm install, turbo build filter, runner with HEALTHCHECK wget /health, EXPOSE 3001/3002/3000
  • Docker Compose full stack: postgres:16-alpine, redis:7-alpine, nats:2.10-alpine JetStream, minio + mc setup bucket agentmesh-artifacts, control-plane, gateway x2 HA cluster (extends), console, healthchecks, env vars DATABASE_URL/REDIS_URL/NATS_URL/S3/JWT_SECRET, volumes pgdata/redisdata/natsdata/miniodata, network agentmesh-network
  • K8s manifests (infra/k8s/): Namespace + ConfigMap (NODE_ENV/NATS_URL/REDIS_URL/DATABASE_URL/S3/GATEWAY_PORT/CONTROL_PLANE_PORT/VERSION) + Secret (JWT/S3 keys/POSTGRES_PASSWORD), Postgres Deployment+Service+PVC 10Gi, Redis 5Gi, NATS JetStream 5Gi, Gateway Deployment 3 replicas tier data-plane envFrom ConfigMap + secretKeyRef liveness/readiness /health resources 200m/256Mi req 1000m/1Gi lim Service :3001 HPA 3-10 CPU 70% mem 80%, Control-Plane 2 replicas, Console 1 replica with CONTROL_PLANE_URL/GATEWAY_URL + NEXT_PUBLIC_*, Ingress nginx class agentmesh.local / -> console /v1 & /api/gateway -> gateway /api/control-plane -> control-plane + gateway.agentmesh.local + control-plane.agentmesh.local
  • Helm chart v1.0.0 appVersion 1.0.0: Chart.yaml with dependencies postgresql 12.12.10 redis 18.6.5 nats 0.19.1 conditional, values.yaml production defaults replicaCount gateway 3 controlPlane 2 console 1 images agentmesh/*:1.0.0 ClusterIP 3001/3002/3000 ingress enabled nginx resources autoscaling gateway 3-10 config (nodeEnv/version/databaseUrl/redisUrl/natsUrl/s3Endpoint/Region/Bucket/controlPlaneUrl/gatewayUrl/jwtSecret/max sizes) secrets postgresql/redis/nats/minio subcharts, templates _helpers.tpl (fullname/labels/selectorLabels), configmap.yaml, secret.yaml, gateway.yaml, control-plane.yaml, console.yaml, ingress.yaml fully templated

DONATE.md

  • AgentMesh-specific persuasive text (real work: API Gateway+Mesh+Discovery+Broker+Observability, Control/Data plane, reliability, security, versioning, tenancy, messaging, artifacts, MCP bridge, webhooks, OTel, console)
  • Infra costs: servers, measurement, production traffic
  • Verified addresses from m-ui: BTC bc1q36uzqlkaav3lkscknhemcem0lcjtkhepdqckul, BNB 0x57902d3955D5F1C0fbCaEA0a12A7D691c792487E, SOL 4hCYetZjvK8mkuobRvPYXyRnM84aTj3q8LZ1GpiTK8HR, TRON TVFZKSwMYNw1jiCyKKtKoVG3HbpB4DhsA5
  • Signature Made ❤️ by Mohammad @llllxyz

README v1.0

  • Full rewrite: Architecture diagram Control Plane / Data Plane / Gateway Cluster, Repository Structure, Quick Start (prereq, clone/install, docker:up infra, env, dev, health checks), Features (A2A first-class with 7 discovery modes + all A2A capabilities, Registry with version tracking/signature/trust, Versioning semver strategies, Multi-Tenancy Org->Projects strict isolation 403, Task Orchestration SUBMITTED→WORKING→COMPLETED/FAILED with delegation tree fan-out limiter depth 10 + live graph React Flow, Reliability retries/backoff/jitter/circuit breaker/bulkhead/idempotency/dedup, Security threat model 16 threats implemented, Authentication 5 providers + composite, Authorization RBAC/ABAC delegation escalation prevention, Message Routing sync/async/streaming, Artifact S3 lifecycle, MCP Bridge bidirectional, Event Bus NATS JetStream + InMemory fallback, Push Notifications signed/retries/SSRF/dead-letter, Rate Limiting multi-dimensional 500/200/50/s + token_bucket/sliding/fixed, Resource Limits 1MB/100MB, Observability OTel tracing User->Agent->Tool + metrics, Web Console 19 pages, SDKs), API versioned /v1/*, Deployment (Compose single/small, K8s enterprise, Helm enterprise, no K8s required for local), Testing coverage list, Docs, Open Source Quality (free personal+commercial no license file/key/subscription), Engineering Principles, Final Product (A2A Gateway + Registry + Discovery + Router + Orchestration + Mesh + Observability + MCP Bridge + Control Plane), SDK Example client + server, Support with DONATE.md link, Signature Made ❤️ by Mohammad @llllxyz
  • Style: short/simple/natural/professional, no heavy bullets, no AI footprint

Versioning

  • package.json 1.0.0, turbo 2.11.3, scripts docker:build/k8s:apply/delete/helm:install/upgrade/uninstall + console:dev/gateway:dev/control-plane:dev
  • All packages + adapters bumped to 1.0.0, Chart 1.0.0

Build

  • pnpm turbo run build --filter=@agentmesh/console --concurrency=1: 26.7s success, 19 routes

Closes Phase 5, marks v1.0 full platform per /home/user/uploads/AgentMesh.md (45 sections).

Completely free for personal and commercial use — no license file, no key, no subscription.

Made ❤️ by Mohammad @llllxyz

- Auth: ApiKey, JWT (jose), OIDC (JWKS), mTLS, Workload Identity, CompositeAuthProvider with fastify-plugin encapsulation
- Authorization: Policy schema, InMemoryPolicyProvider, PolicyEngine with deny-overrides-allow + glob matching, DelegationManager with privilege escalation prevention
- Reliability: CircuitBreaker CLOSED/OPEN/HALF_OPEN with stats, Bulkhead with tryAcquire/release and queue, retry exponential backoff with jitter, withTimeout, Deduplicator, IdempotencyStore, FanOutLimiter per parent task with window
- Rate Limit: InMemoryRateLimitStore, TokenBucket, FixedWindow, SlidingWindow, MultiDimensionalRateLimiter (org/project/agent/identity/skill/endpoint/ip/global) with DEFAULT_RESOURCE_LIMITS and checkResourceLimits
- Versioning: @agentmesh/versioning package - semver parsing, compare, isStable, isCanary, satisfiesRange (^,~,>=,etc), VersionResolver with strategies latest/stable/specific/minimum/canary/max_satisfying, compatibility rules
- Tenancy: @agentmesh/tenancy package - TenantContext, TenantManager with strict isolation enforcement, extractFromRequest, InMemoryTenantStore hierarchy validation
- Events: NatsJetStreamEventBus with JetStream stream AGENTMESH creation, fallback to InMemory, dual publish to local + NATS, consumer groups
- Registry: tenant isolation enforcement in service + repo, versioning resolution (listVersions, discoverBest, resolveAll), resource limits check, delegation chain tracking, event publishing with tenant context
- Tasks: tenant isolation, resource limits (message size, output size), fan-out limiter (max 10), bulkhead per agent (20 concurrent), circuit breaker per agent (5 failures/60s), delegation verification, delegation depth limit (10), withTimeout protection
- Gateway plugins: auth (composite, 401 on invalid), tenant (x-org/x-project), rate-limit (429 + Retry-After + X-RateLimit headers), resource-limits (413 on oversize, fan-out check), circuit-breaker (503 when OPEN + /v1/reliability/stats) - all wrapped with fastify-plugin for proper decorator visibility
- Control-plane plugins: auth, tenant, rate-limit, authorization (maps routes to resource/action, skill:invoke enforcement via PolicyEngine)
- Config: new fields MAX_CONCURRENT_TASKS, MAX_FAN_OUT, MAX_RETRIES, CIRCUIT_BREAKER_*, REQUIRE_TENANT, ALLOW_CROSS_TENANT, VERSION bump to 0.1.0-phase3
- Build: 24 packages successful, verified via manual tests - tenant isolation blocks cross-org/project, versioning stable filtering works, fan-out limit blocks at 10, resource limit blocks 2MB payload, gateway decorators visible, 413 on oversize payload

Co-authored-by: AgentMesh
…lity, SDKs

- Artifacts: Enhanced @agentmesh/artifacts with full lifecycle - create with checksum (sha256), size validation (100MB), metadata (org/project/task/agent), retention, expiration, access control (private/public/org/project), tags, presigned URLs, S3 fallback to InMemory, cleanupExpired, createFromTaskOutput
- Messaging: New @agentmesh/messaging - Message schema with id/sender/receiver/taskId/contextId/sessionId/traceId/correlationId/parentMessageId/contentType/metadata, SendMessageInput, MessageFilter, DeliveryMode sync/async/streaming, InMemoryMessageStore with indexing by task/context/trace, MessageRouter with send (size check 1MB), event publishing, ack, streaming async iterable, InMemoryTransport
- Webhooks: New @agentmesh/webhooks - WebhookEndpoint with url/secret/events/headers/timeout/maxRetries, WebhookDelivery with attempt/status/response, SSRF protection (blocked localhost, 127.0.0.1, 10./192.168./172.16-31., metadata), signPayload HMAC sha256 with timestamp, verifySignature with replay protection (5m tolerance), WebhookManager with register, list, delete, deliver with retries exponential backoff (2^attempt), dead-letter handling, idempotency key
- Observability: New @agentmesh/observability - TraceContext, Span with attributes/events/status, Metric counter/gauge/histogram, InMemoryTracer with startSpan/endSpan/addEvent/setAttribute/getTrace/recordMetric, Observability class with startTaskTrace (User->Agent->Tool chain), startAgentSpan, startToolSpan, recordTaskMetrics (duration, queueTime, retries), recordAgentMetrics (latency, utilization, errors), exportTrace OTel-compatible, Fastify tracing hook
- MCP Bridge: New @agentmesh/mcp-bridge - MCPTool, MCPResource, MCPServerInfo, A2ASkill translation, mcpToolToA2ASkill, mcpServerToA2ACard, a2aSkillToMCPTool, MCPClient interface, InMemoryMCPClient with tool handlers, MCPBridge with registerMCPServer, a2aToMCP (A2A skill -> MCP tool call), mcpToA2A (MCP -> A2A via caller), discoverAsA2A, ExampleMCPServer with read_file/write_file/search
- Telemetry: Enhanced to integrate with observability - withSpan now also creates internal span in observability tracer, recordLatency/recordCounter helpers, re-exports getObservability
- Control-plane modules: artifacts service (create with tenant, getById with access control, list, delete, presignedUrl), messages service (send with tenant, getById, list, ack), webhooks service (register with SSRF check, list, delete, deliver), mcp service (registerServer with example handlers, listServers, discover, callTool, callA2AFromMCP)
- Control-plane routes: /v1/artifacts (CRUD + /:id/data + /:id/url), /v1/messages (list/get/send/ack), /v1/webhooks (register/list/delete + /:id/deliveries + /deliveries + /test), /v1/mcp (servers/discover/register/call + /bridge/a2a-to-mcp), /v1/observability (traces/:traceId, metrics, spans)
- Gateway routes: enhanced /v1/health with Phase 4 features, /v1/info with capabilities, /v1/agents with tenant filter, /v1/agents/:id/invoke with observability tracing and tenant headers, /v1/route with tenant, /v1/artifacts proxy, /v1/messages proxy, /v1/observability traces/metrics, /v1/mcp/servers proxy
- Gateway plugins: new observabilityPlugin with onRequest/onResponse/onError hooks, tracing, metrics, decorator, registered first to capture all
- Control-plane plugins: new observabilityPlugin similar
- SDK: Enhanced @agentmesh/sdk client - discovery with versionStrategy/minVersion/versionRange, versions(), agents register/delete/health/heartbeat, tasks list/complete/fail/retry/history/graph/poll (polling fallback) + streaming via EventSource, artifacts create/getData/list/delete/presignedUrl, messages send/get/list/ack, webhooks register/list/delete/deliveries/test, mcp listServers/discover/registerServer/callTool, observability getTrace/getMetrics/getSpans, health gateway, gateway route/invoke
- Server SDK: Enhanced @agentmesh/server-sdk - TaskHandlerContext with traceId/org/project/artifacts/stream, TaskHandlerResult with artifacts, AgentServerConfig with onAuthorize/middleware/enableTelemetry/enableStreaming, createAgentServer now implements full Fastify server with /.well-known/agent.json, JSON-RPC handling for message/send, tasks/send, tasks/sendSubscribe (SSE streaming), /v1/tasks direct, auth/authorize hooks, observability tracing, graceful error handling
- Config: VERSION bump to 0.1.0-phase4
- Build: 28 packages successful, Phase 4 manual tests passed - artifact checksum, message trace, SSRF blocked localhost, webhook signing valid, MCP bridge 3 skills, tool call, trace spans 2, metrics 2

Co-authored-by: AgentMesh
- Console: Next.js 14 with 19 routes (agents, artifacts, configuration, credentials, health, mcp, messages, organizations, policies, projects, routes, security, skills, tasks, tasks/[id], tasks/[id]/graph with React Flow live graph, telemetry), Tailwind + shadcn/ui + TanStack Query/Table
- Deployment: Dockerfiles rewritten multi-stage for gateway/control-plane/console with all 16 packages + adapters, HEALTHCHECK
- Docker Compose full stack: postgres/redis/nats/minio/minio-setup/control-plane/gateway x2 HA/console with healthchecks, volumes, network
- K8s: Namespace+ConfigMap+Secret, Postgres/Redis/NATS with PVCs, Gateway 3 replicas + HPA 3-10 CPU 70% mem 80%, Control-Plane 2 replicas, Console, Ingress (agentmesh.local + gateway.agentmesh.local + control-plane.agentmesh.local)
- Helm: Chart v1.0.0 appVersion 1.0.0 with dependencies postgresql/redis/nats, values with replicaCounts/images/services/ingress/resources/autoscaling/config/secrets, templates _helpers/configmap/secret/gateway/control-plane/console/ingress
- DONATE.md: AgentMesh-specific persuasive text, crypto addresses BTC bc1q36uzqlkaav3lkscknhemcem0lcjtkhepdqckul BNB 0x57902d3955D5F1C0fbCaEA0a12A7D691c792487E SOL 4hCYetZjvK8mkuobRvPYXyRnM84aTj3q8LZ1GpiTK8HR TRON TVFZKSwMYNw1jiCyKKtKoVG3HbpB4DhsA5, signature
- README v1.0: full architecture, quick start, A2A first-class, Registry, Versioning, Tenancy, Task Orchestration with delegation tree, Reliability, Security threat model, Auth/AuthZ, Messaging, Artifacts, MCP Bridge, Event Bus, Webhooks, Rate Limiting, Observability, Console, SDKs, API, Deployment (Compose/K8s/Helm), Testing, free license note, Made ❤️ by Mohammad @llllxyz
- Bump all packages to 1.0.0
@mmdverse
mmdverse merged commit 35f6cee into main Sep 24, 2026
1 of 2 checks passed
@mmdverse
mmdverse deleted the feat/phase5-console-deployment-docs branch September 24, 2026 19:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant