brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
agent-authoring-and-a2aAuthor, run, and troubleshoot Python Bindu agents, A2A task flow, skill advertising, and negotiation surfaces.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill when a task is about writing a Python Bindu agent, calling bindufy(), validating handler/config shape, advertising skills, reading agent cards, sending A2A JSON-RPC messages, polling tasks, or debugging the task lifecycle.
bindu.penguin.bindufy.bindufy(config, handler).input-required, and auth-required structured responses.author, name, deployment.url, skills, private_skills, storage, scheduler, execution_cost, and telemetry/debug fields.AgentManifest, BinduApplication, TaskManager, ManifestWorker, and A2A JSON-RPC methods.skill.yaml or SKILL.md skill bundles and exposing /agent/skills documentation./agent/negotiation skill-match results.../security-identity-and-payments/.../grpc-and-language-sdks/.bindu serve, bindu deploy, boxd runtime, source packaging, storage/scheduler operations, and observability → ../deployment-runtime-and-operations/.../gateway-inbox-and-orchestration/.references/api-reference.md — Python API surface, config keys, handler contract, app routes, and skills loader.references/a2a-task-lifecycle.md — JSON-RPC message/send, tasks/get, states, ownership, artifacts, and polling.references/skills-and-negotiation.md — skill formats, endpoints, private/public distinction, and negotiation scoring.references/troubleshooting.md — handler/config/skill/UUID/task-state troubleshooting.scripts/inspect_bindu_agent_surface.py — safe package-surface inspection without starting a server.from bindu.penguin.bindufy import bindufy
def handler(messages):
latest = messages[-1].get("content", "") if messages else ""
if not latest:
return {"state": "input-required", "prompt": "Send a message."}
return f"Echo: {latest}"
bindufy({
"author": "you@example.com",
"name": "echo-agent",
"description": "A small Bindu echo agent.",
"deployment": {"url": "http://localhost:3773", "expose": False},
"skills": [],
"storage": {"type": "memory"},
"scheduler": {"type": "memory"},
}, handler)
messages for local Python agents.deployment.url is required and must be HTTP or HTTPS.message/send returns a submitted task; poll tasks/get or stream status for the final answer.