Skip to content

feat: add named agent types with API and CLI support for v1.4.0 - #26

Open
Abdullahbinmushtaq wants to merge 5 commits into
ENDEVSOLS:masterfrom
Abdullahbinmushtaq:feat/agent-types-surfaces
Open

Abdullahbinmushtaq wants to merge 5 commits into
ENDEVSOLS:masterfrom
Abdullahbinmushtaq:feat/agent-types-surfaces

Conversation

@Abdullahbinmushtaq

Copy link
Copy Markdown

This PR adds purpose-specific bot configurations through create_bot(..., agent_type=...), the existing HTTP build endpoint, and the CLI. Developers can select research, coding, financial, or customer support behavior while retaining existing RAG and legacy agent usage.

Changes

  • Add a Pydantic configuration model and AgentTypeRegistry with four built-in types.
  • Apply explicit prompt/tool overrides and preserve named configurations across loading and internal rebuilds.
  • Add optional API agent_type selection, longtrainer build [BOT_ID], and bot create --agent-type.
  • Return actionable errors for invalid types and unavailable dependencies.
  • Extract structured-output validation and one-retry repair while preserving response dictionaries and chat history.
  • Improve full-suite CI collection, failure detection, offline coverage, and MongoDB integration setup.
  • Update documentation, align package versions to 1.4.0, and remove the tracked internal roadmap.

Compatibility and scope

Existing method parameters, API routes, response shapes, and legacy CLI commands remain supported. Older bot records require no migration.

Named tool lists replace defaults, including explicit empty lists. Customer support uses document-grounded RAG and rejects web/upload augmentation. Coding and financial Python tools execute in-process.

YAML remains infrastructure-only. SQL is deferred pending safety and configuration review. Tagging and package publication are outside this PR.

Local validation

  • Python 3.12: 142 tests passed, including MongoDB integration.
  • Python 3.10 and 3.11: 141 tests passed each, with the service-dependent integration test skipped in offline runs.
  • Fresh base and individual purpose-extra installations passed.
  • Real tool construction and agent responses with local fake models passed.
  • Strict MkDocs build, CLI help, Ruff, and diff checks passed.
  • Project, installed package, runtime, CLI, and API versions report 1.4.0.

Live external search/finance responses were not tested. Remote CI and maintainer review remain pending.

@Abdullahbinmushtaq

Copy link
Copy Markdown
Author

The CI parser setup issue has been resolved, and all five checks now pass: lint, tests on Python 3.10, 3.11, and 3.12, and MongoDB lazy-loading integration.
This PR is ready for maintainer review. It adds four named agent types with API and CLI support, preserves configuration across reloads and rebuilds, repairs structured-output handling, and updates documentation. SQL remains deferred pending safety and configuration review.

@Abdullahbinmushtaq

Copy link
Copy Markdown
Author

The latest commit fixes arXiv compatibility, Wikipedia requests, Yahoo Finance news fallback, and Gemini response handling. All five GitHub CI checks have passed. Local verification also passed 151 tests on each Python 3.10, 3.11, and 3.12, including integration coverage. Live Gemini and six tools were verified; Tavily remains unverified because its API key was unavailable. The verification report is included in docs/live_tool_verification.md. Ready for maintainer review.

This branch has not been deployed

No deployments
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