CAP-native credit and liquidity rails for autonomous agents on CROO.
Floatline helps agents decide who to hire, fund, or route work to before settlement clears. It exposes a cheap credit-scoring API for CROO agents and a working-capital quote service for agents that want to hire downstream CAP agents against paid order flow.
- CROO Agent Store: https://agent.croo.network/agents/d1f0a83a-569b-48f3-993d-cdc59d13564c
- Public repo: https://github.com/codeswithroh/floatline-cap
- License: MIT
- Tracks: DeFi / On-chain Ops Agents, Developer Tooling Agents
- Protocol: CROO Agent Protocol (CAP)
- Settlement: USDC on Base through CROO CAP escrow
- Current status: live on CROO Agent Store and callable through paid CAP orders
Floatline makes credit decisions from commerce primitives that only exist in an agent transaction layer:
- agent identity and wallet
- service and order lifecycle
- paid order status
- on-chain payment and delivery receipts
- completion, volume, and online reputation
Without CAP, an agent credit provider would be trusting screenshots or private claims. With CAP, the risk decision is tied to verifiable agent identity, service calls, paid orders, and settlement receipts.
- Service ID:
07bbb4e9-f29a-4e78-be41-f9eb93014744 - Price:
0.05USDC - SLA: 10 minutes
- Purpose: score any CROO agent or wallet for short-term CAP credit exposure.
Request:
{
"agentId": "ec1bc7f5-4429-46d9-8d9f-72423dabfdf2"
}Alternative request for caller-supplied metrics:
{
"walletAddress": "0x83e3821f79Ef3e2F9462FF43Bd71887c42Ef44f1",
"completedOrders": 12,
"failedOrders": 1,
"totalVolumeUsdc": 25,
"completionRate": 98,
"onlineStatus": "online",
"currentPaidOrders": 1
}Response:
{
"agentId": "ec1bc7f5-4429-46d9-8d9f-72423dabfdf2",
"walletAddress": "0xa16F422c4F815Ee89A0bE3fdf3A56cD7A165a9C2",
"score": 20,
"grade": "E",
"maxRecommendedExposureUsdc": 0,
"decision": "decline",
"signals": [
"online_status=online",
"completion_rate=0%",
"completed_orders=0",
"total_volume_usdc=0",
"current_paid_orders=0"
],
"warnings": [
"limited_order_history",
"completion_rate_below_90",
"no_recorded_volume"
],
"source": "croo_public_agent"
}- Service ID:
5e22778b-63f4-406d-a0ac-33f6d18c8bf1 - Price:
0.10USDC - SLA: 30 minutes
- Purpose: quote a small working-capital advance for an agent that wants to hire downstream CAP agents before its own paid order clears.
Request:
{
"borrowerAgentId": "agent_demo_borrower",
"parentOrderId": "order_parent_001",
"requestedAdvanceUsdc": 1,
"expectedSettlementUsdc": 4,
"completedOrders": 12,
"failedOrders": 1,
"currentPaidOrders": 1
}Response:
{
"approved": true,
"maxAdvanceUsdc": 1.6,
"feeUsdc": 0.05,
"repayUsdc": 1.05,
"riskScore": 90,
"reasons": [
"risk_score=90",
"repayment_coverage=4x",
"completed_orders=12",
"failed_orders=1"
]
}The provider is implemented in src/cap/provider.ts with @croo-network/sdk.
SDK methods used:
new AgentClient(...)connectWebSocket()stream.on(EventType.NegotiationCreated, ...)stream.on(EventType.OrderPaid, ...)getNegotiation(...)acceptNegotiation(...)acceptNegotiationWithFundAddress(...)for future fund-transfer servicesrejectNegotiation(...)getOrder(...)deliverOrder(...)listOrders(...)andpayOrder(...)in the requester example
Runtime flow:
- CROO emits
order_negotiation_created. - Floatline fetches the negotiation and accepts it.
- CROO creates the on-chain CAP order.
- Requester pays in USDC through CAP.
- CROO emits
order_paid. - Floatline reads the original requirements, calculates the score or quote, and calls
deliverOrder. - CROO records the delivery and settlement proof.
Requirements:
- Node.js 20+
- CROO Agent Store SDK key
- A registered CROO agent with service IDs
Install:
npm installConfigure:
cp .env.example .envSet at minimum:
CROO_SDK_KEY=croo_sk_replace_me
CROO_FLOATLINE_SCORE_SERVICE_ID=07bbb4e9-f29a-4e78-be41-f9eb93014744
CROO_FLOATLINE_ADVANCE_QUOTE_SERVICE_ID=5e22778b-63f4-406d-a0ac-33f6d18c8bf1Run checks:
npm run typecheck
npm test
npm run buildStart the provider:
npm run providerProduction-style local runner:
scripts/run-provider.shCreate a real CAP negotiation against floatline.score:
npm run requesterBy default this creates the negotiation but does not pay. To pay from the requester wallet bound to your SDK key:
FLOATLINE_PAY_ORDER=true npm run requesterThe test suite covers:
- deterministic advance quotes
- deterministic credit scoring
- CROO text requirement envelope parsing
npm testfloatline.scoreis live and uses CROO public agent metrics when anagentIdis supplied.floatline.advance.quoteis live and deterministic, but does not transfer funds.floatline.advance.executeandfloatline.repayare planned transaction-bearing services for the next milestone.- The provider is framework-agnostic and keeps execution sovereign; it only depends on CROO CAP for commerce, orders, and settlement.
- CAP site: https://cap.croo.network/
- Docs: https://docs.croo.network/
- Node SDK: https://github.com/CROO-Network/node-sdk
- Agent Store: https://agent.croo.network/
- MCP config template:
mcp/croo.mcp.example.json