Signatures Use when writing Rust code with `axllm` for string signatures, field descriptors, JSON schema output, validation, and typed tool argument shapes. rust skills skill-signature packages/rust/skills/ax-rust-signature/SKILL.md skill Signatures

Ax Signatures For Rust

Use when writing Rust code with axllm for string signatures, field descriptors, JSON schema output, validation, and typed tool argument shapes.

Install

Install only this skill for Rust:

Shell
npx skills add https://ax-llm.github.io/ax/rust/ --skill 'ax-rust-signature'

Published skill file: ax-rust-signature/SKILL.md.

Source

Skill Instructions

This skill helps an agent write Rust code with the generated Ax package axllm. Use the generated package API, examples, and manifests; do not import TypeScript-only APIs unless you are editing the TypeScript package.

When To Use

  • Declare input and output contracts with native generated-package APIs.
  • Generate JSON-schema-compatible shapes for outputs, tools, prompts, and validation.
  • Keep Standard Schema and TypeScript-only helper libraries out of generated-language code.

Package Facts

  • Language: Rust.
  • Package: axllm.
  • Package API docs: API.md and axir-api.json.
  • Capability manifest: axir-capabilities.json.
  • Runnable examples: examples/.
  • Real network support: yes.
  • Scripted no-key transport support: yes.
  • Runtime profiles: javascript-quickjs.

Core Pattern

Rust
use axllm::s;

let sig = s("question:string -> answer:string")?;
let schema = sig.to_json_schema("outputs");

Relevant API Surface

  • Signatures: s, f, AxSignature
  • Tools: tool, Tool

Guardrails

  • Start from package examples for exact native syntax before inventing a new call shape.
  • Use provider-api examples only when the user explicitly has provider credentials available.
  • Use no-key examples for deterministic local checks and provider request mapping.
  • Treat AxIR as the source of generated package truth: if package docs disagree with source code, update the compiler and regenerate packages.
  • Do not copy repo-maintainer skills from tools/*/skills/ into user packages.
Docs