Skip to main content
Complete guide to all configuration options available when creating a Bindu agent with cookiecutter. Follow these steps in order to configure your agent.

Basic Information

Basic Information

author
string
default:"Your Name"
Your name or organization name
email
string
Your contact email address
author_github_handle
string
default:"your_github_handle"
Your GitHub username, this will be used for the github actions.
project_name
string
default:"my-bindu-agent"
The name of your agent project (will be used for directory name).
project_description
string
default:"A Bindu AI agent for intelligent task handling"
Brief description of what your agent does
agent_version
string
default:"1.0.0"
Initial version number for your agent.
bindu_version
string
default:"0.3.19"
Version of Bindu to use

Agent Framework

Agent Framework

agent_framework
select
default:"agno"
Choose your preferred agent framework:
  • agno - Lightweight and fast
  • langchain - Full-featured with extensive integrations
  • crew - Multi-agent orchestration
  • fastagent - High-performance agents
  • openai agent - OpenAI’s native agent framework
  • google adk agent - Google’s Agent Development Kit
  • custom - Bring your own framework

Skills & Capabilities

Skills & Capabilities

include_example_skills
select
default:"y"
We do encourage you to include example skills to get started quickly. Because the skills will be used later to advertise the power of the agents to the world. Include example skills to get started quickly
  • y - Include example skills
  • n - Start with a blank slate
skill_names
string
default:"question-answering,pdf-processing"
Comma-separated list of skill names (e.g., question-answering,pdf-processing,web-search) We will create a template folder for each skill. You need to complete them.

Authentication & Security

Authentication & Security

enable_auth
select
default:"y"
Enable authentication for your agent
  • y - Enable authentication
  • n - No authentication (not recommended for production)
auth_provider
select
default:"auth0"
Choose authentication provider:
  • auth0 - Auth0 authentication
  • cognito (not implemented yet)
  • azure ad (not implemented yet)
  • google (not implemented yet)
  • custom (not implemented yet)
  • none - No authentication

Identity & Cryptography

Identity & Cryptography

enable_did
select
default:"y"
Enable Decentralized Identifier (DID) for your agent We would encourage you to enable DID for your agent. That will help to provide an identity to your agent. We have not added decentralised identity support yet. But thats our roadmap.
  • y - Enable DID
  • n - Disable DID
enable_pki
select
default:"y"
Enable Public Key Infrastructure We would encourage you to enable PKI for your agent. That will create an internal folder for your agent’s keys.
  • y - Enable PKI
  • n - Disable PKI
recreate_keys
select
default:"y"
Recreate cryptographic keys on each deployment.
  • y - Recreate keys
  • n - Reuse existing keys
verification_key_type
select
default:"rsa"
Type of verification key:
  • rsa - RSA encryption
  • ecdsa - Elliptic Curve Digital Signature Algorithm

Agent Behavior

Agent Behavior

enable_system_message
select
default:"y"
Enable system message for agent instructions. When enabled, a system message is added to your agent’s prompts to ensure it follows the β€œinput-required” protocol correctly.
  • y - Enable system message
  • n - Disable system message
enable_context_based_history
select
default:"n"
Enable context-based conversation history. When enabled, the agent maintains context across tasks, which may improve performance but could also increase hallucination risk. Monitor your agent’s output carefully if you enable this feature.
  • y - Enable context-based history
  • n - Use simple history

Observability & Monitoring

Observability & Monitoring

enable_telemetry
select
default:"y"
Enable telemetry for monitoring. When enabled, the agent sends telemetry data to the observability provider.
  • y - Enable telemetry
  • n - Disable telemetry
enable_llm_observability
select
default:"y"
Enable LLM-specific observability. Uses OpenInference to track LLM usage. This format is respected by many observability providers.
  • y - Enable LLM observability
  • n - Disable LLM observability
llm_observability_provider
select
default:"phoenix"
Choose LLM observability provider:
  • phoenix - Arize Phoenix
  • langfuse - Langfuse (not properly tested yet)
use_jaeger
select
default:"y"
Enable Jaeger for distributed tracing
  • y - Enable Jaeger
  • n - Disable Jaeger

Cost Tracking

enable_execution_cost
select
default:"n"
Track execution costs and enable payment requirements. When enabled, clients must pay for each request. A configuration will be created with settings like amount ($0.0001), token (USDC), network (base-sepolia), payment address, and protected methods. The payment flow respects the X402 protocol. For more details, see the payment documentation.
  • y - Enable cost tracking
  • n - Disable cost tracking

Storage & Scheduling

Storage & Scheduling

storage_type
select
default:"memory"
Choose storage backend. All workers use shared storage to track tasks and persist data. For production, use PostgreSQL because in-memory storage loses all information if the pod goes down.
  • memory - In-memory storage
  • postgres (not implemented yet)
scheduler_type
select
default:"memory"
Choose scheduler backend. For production, use Redis.
  • memory - In-memory scheduler
  • redis (not implemented yet)

Deployment

Deployment

deployment_host
string
default:"0.0.0.0"
Host address for deployment
deployment_port
string
default:"3773"
Port number for deployment, Lets use 3773 as default, two prime numbers 37+73 :)
log_level
select
default:"info"
Logging level:
  • info - Standard information
  • debug - Detailed debugging
  • warning - Warnings only
  • error - Errors only

Development Tools

Development Tools

type_checker
select
default:"ty"
Choose type checker:
  • ty - Astral’s type checker
  • none - No type checking
include_github_actions
select
default:"y"
Include GitHub Actions CI/CD workflows
  • y - Include workflows
  • n - Skip workflows
mkdocs
select
default:"y"
Include MkDocs documentation setup
  • y - Include MkDocs
  • n - Skip documentation
codecov
select
default:"y"
Include Codecov integration
  • y - Include Codecov
  • n - Skip Codecov
devcontainer
select
default:"n"
Include VS Code devcontainer configuration
  • y - Include devcontainer
  • n - Skip devcontainer
dockerfile
select
default:"y"
Include Dockerfile for containerization
  • y - Include Dockerfile
  • n - Skip Dockerfile

License

License

open_source_license
select
default:"MIT license"
Choose open source license:
  • MIT license
  • Apache Software License 2.0
  • BSD license
  • ISC license
  • GNU General Public License v3
  • Not open source

Internal Defaults

These values are set automatically and not prompted during setup:
_telemetry_backend
string
default:"jaeger"
Telemetry backend (internal)
_oltp_endpoint
string
default:"http://localhost:4318/v1/traces"
OTLP endpoint for telemetry (internal)
_phoenix_endpoint
string
default:"http://localhost:6006"
Phoenix endpoint (internal)
_langfuse_endpoint
string
default:"http://localhost:3000"
Langfuse endpoint (internal)
_storage_type
string
default:"memory"
Storage type (internal)
_scheduler_type
string
default:"memory"
Scheduler type (internal)
_verification_key_type
string
default:"rsa"
Verification key type (internal)