Skip to content

feat: add framework-neutral core toolkit surface#45

Open
byjoh wants to merge 3 commits into
developmentfrom
feat/core-toolkit-surface
Open

feat: add framework-neutral core toolkit surface#45
byjoh wants to merge 3 commits into
developmentfrom
feat/core-toolkit-surface

Conversation

@byjoh

@byjoh byjoh commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add a framework-neutral core surface for listing Extend tool specs and executing raw tools
  • move framework and server dependencies behind optional extras so base installs stay lightweight
  • expand endpoint tool coverage for transaction counts, category labels, organizations, users, and expense policies
  • document core usage plus adapter extras for custom agent runtimes and service integrations

Details

The new core API exposes structured tool metadata, including stable refs, input schemas, required scopes, action metadata, and read/write classification. It also provides raw structured execution through existing shared functions without requiring callers to use a specific AI framework adapter.

Framework-specific packages are now optional extras for LangChain, MCP, OpenAI Agents, and CrewAI. Top-level imports lazy-load optional adapters so core usage does not require those dependencies.

The catalog now includes additional endpoint families used by service integrations: transaction counting, expense category label detail, organization and user metadata, and organization expense policy raw text. For endpoints not modeled by the pinned SDK client, the toolkit uses a small raw request helper against the SDK API client while preserving the same tool metadata and execution path.

Validation

  • python -m pytest extend_ai_toolkit/tests -q
  • python -m ruff check --select F extend_ai_toolkit/core.py extend_ai_toolkit/shared/enums.py extend_ai_toolkit/shared/configuration.py extend_ai_toolkit/shared/schemas.py extend_ai_toolkit/shared/prompts.py extend_ai_toolkit/shared/functions.py extend_ai_toolkit/shared/tools.py extend_ai_toolkit/tests/test_endpoint_tool_coverage.py
  • python -m build
  • git diff --check

@byjoh byjoh marked this pull request as ready for review July 2, 2026 02:35
@byjoh byjoh requested review from a team as code owners July 2, 2026 02:35
@byjoh byjoh requested a review from drumwell July 2, 2026 02:35
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.

2 participants