intentcall_codegen 0.1.0 copy "intentcall_codegen: ^0.1.0" to clipboard
intentcall_codegen: ^0.1.0 copied to clipboard

PRE-RELEASE — Optional @AgentTool annotations and build_runner codegen for intentcall.

⚠️ Pre-release (0.1.x) — Highly experimental. APIs may change without notice. Not for production. Details.

intentcall_codegen #

Optional @AgentTool / @AgentParam annotations and build_runner codegen pilot (Phase 5-C).

Hand-written AgentCallEntry remains first-class; codegen is opt-in for stable tools with typed parameters.

Pilot usage #

  1. Add dependency:
dependencies:
  intentcall_codegen: ^0.1.0
  intentcall_core: ^0.1.0
  intentcall_schema: ^0.1.0

dev_dependencies:
  build_runner: ^2.4.15
  1. Annotate a top-level function:
import 'package:intentcall_codegen/intentcall_codegen.dart';
import 'package:intentcall_core/intentcall_core.dart';
import 'package:intentcall_schema/intentcall_schema.dart';

part 'my_tools.g.dart';

@AgentTool(namespace: 'app', name: 'demo_ping', description: 'Ping')
Future<AgentResult> demoPing(@AgentParam('Message') String message) async {
  return AgentResult.success(data: {'pong': message});
}
  1. Run codegen:
dart run build_runner build --delete-conflicting-outputs
  1. Register generated intent:
registry.register(demoPingRegistration);
// or
registerAll(registry, {demoPingCallEntry});

Generated output #

For each @AgentTool function, .g.dart emits:

  • _<name>InputSchema — JSON Schema from parameter types
  • <name>CallEntryAgentCallEntry.tool(...) factory
  • <name>RegistrationRegisteredAgentIntent via .toRegistration()

Supported parameter types: String, int, bool, double.

Scope (pilot) #

  • Top-level functions only
  • Tool kind only (resources: hand-write AgentCallEntry.resource)
  • Test fixture: test/fixtures/demo_ping_tool.dart

See intentcall design (declarative authoring).

0
likes
140
points
0
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

PRE-RELEASE — Optional @AgentTool annotations and build_runner codegen for intentcall.

Repository (GitHub)
View/report issues

Topics

#mcp #codegen #build-runner

License

MIT (license)

Dependencies

analyzer, build, intentcall_core, intentcall_schema, meta, source_gen

More

Packages that depend on intentcall_codegen