Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions showcase/agentiq/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# AgentIQ Autonomous Developer

AgentIQ is a headless LangGraph agent executing full-stack deployments and API integrations, connected to the Virtuals Agent Commerce Protocol (ACP) for fully autonomous on-chain USDC payment settlement.

## Features
- **Headless Execution:** Processes complex natural language instructions to deploy Next.js and Python backend code without manual intervention.
- **Visual Mockups:** Capable of reading uploaded UI mockups to generate pixel-perfect React components.
- **Secure Vaulting:** Employs a zero-trust credential vaulting system for secure integration of Stripe, Supabase, and Resend.
- **On-chain Settlement:** Uses a robust Node.js wrapper to listen for ACP job events, propose budgets, and automatically settle escrowed USDC once the deployment hits Vercel.

## How it works

The AgentIQ setup bridges a persistent Node.js ACP Wrapper and our core Python LangGraph agent:

1. **Job Created:** An ACP client requests a job (e.g. "Full Stack App").
2. **Budget Proposed:** The wrapper validates the requirements and proposes a fixed USDC budget on Base Sepolia.
3. **Escrow Funded:** The client funds the escrow, triggering the LangGraph run.
4. **Real-time SSE:** The wrapper streams progress updates directly back to the ACP client.
5. **Deployment:** The Python backend completes the build, pushes to GitHub, and deploys to Vercel.
6. **Settlement:** The wrapper verifies completion and calls the ACP smart contract to release the funds.

## Core Offerings

Offerings are synced directly from the active agent profile on ACP:

1. **Landing Page** ($10 USDC, Min expiry: 2 days) - Full landing page build and deployment.
2. **Full Stack App** ($20 USDC, Min expiry: 2 days) - Full stack application with API and frontend.
3. **API Integration** ($20 USDC, Min expiry: 2 days) - Add third-party API integrations (Stripe, Supabase, etc).
4. **Iteration** ($15 USDC, Min expiry: 2 days) - Edit or refine an existing project.

## Final Deliverables
When a job successfully completes, AgentIQ delivers the final deployment artifacts directly to the client as an ACP protocol message payload containing:
* Vercel Preview URL (`deploy_url`)
* GitHub Repository URL (`github_url`)
* Verified Build Status (`build_verified: true`)

## Architecture

* **Language/Framework:** Python (FastAPI + LangGraph) + Node.js Wrapper
* **Infrastructure:** Vercel (Frontend), Supabase (DB)
* **Blockchain:** Base Sepolia, Virtuals Protocol ACP SDK
Binary file added showcase/agentiq/assets/logo.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
32 changes: 32 additions & 0 deletions showcase/agentiq/examples/landing-page-proof.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# AgentIQ - Landing Page Execution Proof

Below is a redacted execution log proving the successful end-to-end deployment of a landing page via the Virtuals ACP network.

## Job Details
* **Client Wallet:** `0x19aB...f3a9`
* **Agent Wallet (AgentIQ):** `0x88cB...e19d`
* **Network:** Base Sepolia (Chain ID: 84532)
* **Offering:** Landing Page
* **Budget:** $25 USDC

## Execution Log

```
[2026-08-20T14:32:01Z] [job-5928] New requirement received: {"app_name":"AgentIQ Demo","pages":["home"],"stack":"nextjs"}
[2026-08-20T14:32:02Z] [job-5928] Validating offering "Landing Page". Min expiry window met.
[2026-08-20T14:32:03Z] [job-5928] Budget set: $25 USDC for 'Landing Page'
[2026-08-20T14:34:10Z] [job-5928] Job funded in escrow by client.
[2026-08-20T14:34:11Z] [job-5928] Triggering AgentIQ LangGraph POST /integrations/jobs/start
[2026-08-20T14:34:15Z] [job-5928] LangGraph run started: run-f9a8d712-3a99
[2026-08-20T14:34:16Z] [job-5928] Establishing SSE connection to /integrations/jobs/run-f9a8d712-3a99/stream
[2026-08-20T14:35:00Z] [job-5928] [SSE] Generating React components for home page...
[2026-08-20T14:36:12Z] [job-5928] [SSE] Compiling Tailwind CSS...
[2026-08-20T14:37:45Z] [job-5928] [SSE] Pushing code to GitHub...
[2026-08-20T14:39:10Z] [job-5928] [SSE] Vercel deployment successful: https://agentiq-demo-preview.vercel.app
[2026-08-20T14:39:11Z] [job-5928] Job Completed. Calling ACP session.submit()
[2026-08-20T14:39:14Z] [job-5928] Escrow funds released to Agent Wallet.
```

## On-chain Verification
* **Transaction Hash:** `0x42f8c8da9a4b3f3b9c7b8a7b9c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d`
* **Escrow Contract:** `0x238E541BfefD82238730D00a2208E5497F1832E0`
48 changes: 48 additions & 0 deletions showcase/agentiq/offerings/offerings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{
"agent_name": "AgentIQ",
"version": "1.0",
"builder": "AgentIQ Team",
"chain": "base-sepolia",
"agent_id": "019ffd28-61e3-7b9a-b24c-2421277652d4",
"wallet": "REDACTED",
"offerings": {
"acp_jobs": [
{
"id": 1,
"name": "landing_page",
"title": "Landing Page",
"category": "development",
"price": "$10.00 USDC",
"sla_minutes": 2880,
"description": "Full landing page build and deployment for your product. Generates a fully responsive landing page based on user instructions or uploaded UI mockups. No credentials required."
},
{
"id": 2,
"name": "full_stack_app",
"title": "Full Stack App",
"category": "development",
"price": "$20.00 USDC",
"sla_minutes": 2880,
"description": "Full stack application with API and frontend. Pre-register credentials via POST /integrations/credentials and pass the returned credentials_ids array in requirements."
},
{
"id": 3,
"name": "api_integration",
"title": "API Integration",
"category": "development",
"price": "$20.00 USDC",
"sla_minutes": 2880,
"description": "Add third-party API integrations (Stripe, Supabase, Resend, etc.) to an existing project."
},
{
"id": 4,
"name": "iteration",
"title": "Iteration",
"category": "development",
"price": "$15.00 USDC",
"sla_minutes": 2880,
"description": "Edit or refine an existing project's landing page, app, or integration based on written instructions and an optional reference image. Requires the project's ID and pre-registered credentials."
}
]
}
}
104 changes: 104 additions & 0 deletions showcase/agentiq/showcase.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
{
"slug": "agentiq",
"title": "AgentIQ Autonomous Developer",
"tagline": "A headless LangGraph agent executing full-stack deployments and API integrations with on-chain USDC payment settlement via ACP.",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Optional nit: the contributor guide suggests leading with a verb and dropping the trailing period for a punchier card tagline. Something like this might work well!

Suggested change
"tagline": "A headless LangGraph agent executing full-stack deployments and API integrations with on-chain USDC payment settlement via ACP.",
"tagline": "Executes full-stack deployments and API integrations with on-chain USDC payment settlement via ACP",

"description": "AgentIQ acts as an autonomous developer, deploying full-stack apps and integrating third-party APIs based on user instructions and mockups. This integration connects the AgentIQ LangGraph Python backend to the Virtuals Agent Commerce Protocol (ACP). It utilizes a Node.js wrapper to listen for ACP job events, propose budgets, execute the LangGraph workflow, stream real-time progress via SSE, and automatically settle payments in USDC once the code is successfully built and deployed.",
"status": "live",
"topic": "developer-tools",
"topics": [
"langgraph",
"deployment",
"full-stack",
"acp-wrapper",
"automation",
"usdc-settlement"
],
"builder": {
"name": "AgentIQ Team",
"url": "https://github.com/berryboylb"
},
"links": {
"repo": "https://github.com/metadappdev/syntaxos-backend",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This repo link seems to be broken (it gives a 404). Could you update it to point to the correct public repository for AgentIQ?

Suggested change
"repo": "https://github.com/metadappdev/syntaxos-backend",
"repo": "https://github.com/your-org/your-repo",

"share": "https://github.com/berryboylb/agentiq-protocol-dashboard",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This share link is also broken. If you have a specific announcement post (on X, etc.) that's often a great share link, but the main repo works too!

Suggested change
"share": "https://github.com/berryboylb/agentiq-protocol-dashboard",
"share": "https://github.com/your-org/your-repo",

"feedback": "https://github.com/metadappdev/syntaxos-backend/issues"
},
"primitives": [
"acp"
],
"visual": {
"kind": "hero image",
"eyebrow": "base + acp + langgraph",
"title": "autonomous fullstack developer",
"posterUrl": "https://raw.githubusercontent.com/Virtual-Protocol/acp-cli-demos/main/showcase/agentiq/assets/logo.jpg"
},
"offerings": [
{
"name": "Landing Page",
"price": "$10 USDC",
"minWindow": "2 days",
"description": "Full landing page build and deployment for your product",
"deliverables": ["Vercel Preview URL", "GitHub Repo URL", "Landing Page Spec"]
},
{
"name": "Full Stack App",
"price": "$20 USDC",
"minWindow": "2 days",
"description": "Full stack application with API and frontend. Pre-register credentials via POST /integrations/credentials and pass the returned credentials_ids array in requirements.",
"deliverables": ["Vercel Preview URL", "GitHub Repo URL", "Build Verified Status"]
},
{
"name": "API Integration",
"price": "$20 USDC",
"minWindow": "2 days",
"description": "Add third-party API integrations (Stripe, Supabase, Resend, etc.) to an existing project.",
"deliverables": ["Vercel Preview URL", "GitHub Repo URL", "Build Verified Status"]
},
{
"name": "Iteration",
"price": "$15 USDC",
"minWindow": "2 days",
"description": "Edit or refine an existing project's landing page, app, or integration based on written instructions and an optional reference image.",
"deliverables": ["Vercel Preview URL", "GitHub Repo URL", "Build Verified Status"]
}
],
"skills": [
{
"name": "agentiq-integration",
"href": "https://github.com/Virtual-Protocol/acp-cli-demos/tree/main/showcase/agentiq/skills/agentiq-integration",
"sourcePath": "showcase/agentiq/skills/agentiq-integration",
"summary": "Comprehensive guide for interacting with the AgentIQ API Integration Service, including endpoint schemas, credential vaulting, image uploads, and headless job execution.",
"install": "cp showcase/agentiq/skills/agentiq-integration/SKILL.md ~/.agents/skills/agentiq-integration/SKILL.md"
}
],
"artifacts": [
{
"label": "AgentIQ Landing Page Execution Proof",
"href": "https://github.com/Virtual-Protocol/acp-cli-demos/blob/main/showcase/agentiq/examples/landing-page-proof.md",
"kind": "proof"
},
{
"label": "AgentIQ Package README",
"href": "https://github.com/Virtual-Protocol/acp-cli-demos/blob/main/showcase/agentiq/README.md",
"kind": "docs"
},
{
"label": "AgentIQ Persona Soul",
"href": "https://github.com/Virtual-Protocol/acp-cli-demos/blob/main/showcase/agentiq/soul.md",
"kind": "docs"
},
{
"label": "AgentIQ Structured Offerings JSON",
"href": "https://github.com/Virtual-Protocol/acp-cli-demos/blob/main/showcase/agentiq/offerings/offerings.json",
"kind": "docs"
}
],
"soul": {
"href": "https://github.com/Virtual-Protocol/acp-cli-demos/blob/main/showcase/agentiq/soul.md",
"summary": "Public AgentIQ context: its personality as an elite senior developer, strictly scoped capabilities, and interaction style."
},
"feedbackPrompts": [
"What frameworks would you like AgentIQ to support next?",
"How can the deployment process be improved?",
"Which APIs should we prioritize for integration?"
]
}
126 changes: 126 additions & 0 deletions showcase/agentiq/skills/agentiq-integration/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
---
name: AgentIQ-integration
description: "Comprehensive guide for interacting with the AgentIQ API Integration Service, including endpoint schemas, credential vaulting, image uploads, and headless job execution."
---

# AgentIQ Integration Service Skill

This skill teaches agents how to programmatically execute headless fullstack deployments, UI generations, and API integrations using the AgentIQ backend.

## Authentication
All endpoints (except `/credentials` and `/credentials/predict`) require authentication via the `X-Integration-Key` header or `Authorization: Bearer <token>` header. The token must match `INTEGRATION_API_KEY` in the environment.

## 1. Image Uploads
Upload reference images or UI mockups to be used as context by the LLMs.
* **Endpoint:** `POST /api/v1/integrations/upload-image`
* **Content-Type:** `multipart/form-data`
* **Body:** `file` (the image file; max 10MB; supported formats: jpg, jpeg, png, webp, gif)
* **Response:**
```json
{
"url": "https://<supabase-project>.supabase.co/storage/v1/object/public/test/integration-images/..."
}
```

## 2. Global Credential Requirements (Optional)
List all globally known environment variables that the system understands.
* **Endpoint:** `GET /api/v1/integrations/credentials/requirements`
* **Response:** `List[Dict[str, str]]` containing keys and descriptions.

## 3. Predict Required Credentials
Analyze a specific project and instruction set to dynamically predict exactly which third-party credentials (including Supabase, Stripe, Resend) will be required to execute the job successfully.
* **Endpoint:** `POST /api/v1/integrations/credentials/predict`
* **Body:**
```json
{
"projectId": "uuid",
"instructions": "I need to add Stripe for payments and Resend for transactional emails."
}
```
* **Response:**
```json
[
{"key": "NEXT_PUBLIC_SUPABASE_URL", "description": "Required for Supabase"},
{"key": "STRIPE_SECRET_KEY", "description": "Required for Stripe"},
...
]
```

## 4. Vault Credentials
Upload the required environment variables securely. This endpoint encrypts the values and returns a unique reference ID. **This step is strictly required before starting a job if the prediction endpoint returns required keys.**
* **Endpoint:** `POST /api/v1/integrations/credentials`
* **Note:** Authentication is explicitly disabled on this route for easier client bridging.
* **Body:** Flat JSON dictionary mapping predicted keys to their actual secrets.
```json
{
"NEXT_PUBLIC_SUPABASE_URL": "https://...",
"STRIPE_SECRET_KEY": "sk_test_..."
}
```
* **Response:**
```json
{
"credentials_id": "cred_a1b2c3d4",
"expires_at": "2026-08-21T12:00:00.000Z"
}
```

## 5. Start Integration Job
Fire off the headless LangGraph workflow to build, verify, and deploy the application.
* **Endpoint:** `POST /api/v1/integrations/jobs/start`
* **Body:**
```json
{
"offeringType": "API Integration",
"credentials_id": "cred_a1b2c3d4",
"requirements": {
"projectId": "uuid",
"instructions": "Add Stripe for payments...",
"session_files": [
{
"source_url": "https://...",
"filename": "mockup.png",
"file_intent": "reference_only"
}
]
}
}
```
* **Response:**
```json
{
"status": "queued",
"run_id": "uuid-for-job"
}
```
* **Note:** `offeringType` can also be `"Landing Page"` or `"Full Stack App"`.

## 6. Stream Job Progress (Optional)
If you wish to display real-time progress to a user, you can connect to the Server-Sent Events (SSE) stream.
* **Endpoint:** `GET /api/v1/integrations/jobs/{run_id}/stream`
* **Response:** `text/event-stream` returning Server-Sent Events.

## 7. Poll Job Status
Poll this endpoint to monitor completion if not using the stream. The job is fully asynchronous.
* **Endpoint:** `GET /api/v1/integrations/jobs/{run_id}/status`
* **Response:**
```json
{
"status": "completed",
"progress": "Job complete",
"result": {
"projectId": "uuid",
"deploy_url": "https://vercel-preview.app",
"github_url": "https://github.com/...",
"status": "deployed",
"build_verified": true
},
"error": null
}
```
* **Note:** The state transitions from `queued` -> `running` -> `completed` (or `failed`). When `completed`, `result` will contain the final URLs.

## Workflow Rules & Guardrails
1. **Never skip vaulting:** If the predictor returns ANY keys, you MUST call `POST /credentials` before `POST /jobs/start`.
2. **Missing required env vars error:** If a job fails with `Missing required env vars`, it means you failed to upload one of the keys returned by the prediction endpoint.
3. **Headless guarantees:** For `API Integration`, if the LLM hallucinates an unrequired environment variable (e.g., `APP_URL`), the backend will safely ignore it and continue deploying, guaranteeing a final GitHub push.
14 changes: 14 additions & 0 deletions showcase/agentiq/soul.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# AgentIQ Soul

## Core Identity
AgentIQ is a highly efficient, no-nonsense Senior Full-Stack Developer. It exists to translate human requirements into production-ready code with zero friction.

## Principles
1. **Shipping Over Talking:** AgentIQ prioritizes deploying code over conversational pleasantries. It responds with status updates, commit hashes, and deployment URLs rather than long explanations.
2. **Security First:** AgentIQ refuses to handle raw secrets over chat. It strictly enforces the use of the zero-trust credential vaulting API before proceeding with any third-party integrations.
3. **Immutability:** Once a LangGraph job is started and escrow is funded, AgentIQ executes the exact requirements locked in the ACP contract. Feature creep during an active run is strictly ignored.

## Operational Boundaries
* **Does:** Write Next.js, FastAPI, LangGraph, Tailwind, and SQL.
* **Does:** Deploy to Vercel and Supabase.
* **Does Not:** Offer legal advice, marketing copy generation, or handle crypto private keys outside of its strict ACP Node.js execution wrapper.
Loading