Skip to main content

Arkady Plugin SDK

A Python SDK for building Arkady plugins.

Development

This repository uses just as its command runner. Install it with your preferred package manager, or with uv:

uv tool install rust-just

Common development commands:

just dev       # Sync default dev dependencies
just fmt       # Apply formatting fixes
just lint      # Format and apply lint fixes
just check     # Check lockfile, formatting, and linting
just test      # Run SDK tests
just build     # Build source and wheel distributions
just docs      # Generate schema documentation

LLM Polling Support

SDK 0.9.0 adds support for polling-based LLM invocation. A model can now declare the polling feature and implement polling methods, allowing plugins to submit long-running provider jobs and return later checks through a short request/response flow.

Polling results use three states:

  • running returns plugin-owned state for the next check.
  • succeeded returns the final LLM result.
  • failed returns a terminal error.

Version Management

This SDK follows Semantic Versioning (a.b.c):

  • a: Major version - Indicates significant architectural changes or incompatible API modifications
  • b: Minor version - Indicates new feature additions while maintaining backward compatibility
  • c: Patch version - Indicates backward-compatible bug fixes

For SDK Users

When depending on this SDK, it's recommended to specify version constraints that:

  • Allow patch and minor updates for bug fixes and new features
  • Prevent major version updates to avoid breaking changes

Example in your project's dependency management:

arkady_plugin >= 0.8

Manifest Version Reference

For the manifest specification, we've introduced two versioning fields:

  • meta.version - The version of the manifest specification, designed for backward compatibility. When installing an older plugin to a newer Arkady, it's difficult to ensure breaking changes never occur, but at least Arkady can detect them through this field. Once an unsupported version is detected, Arkady will only use the supported parts of the plugin.
  • meta.minimum_arkady_version - The minimum version of Arkady, designed for forward compatibility. When installing a newer plugin to an older Arkady, many new features may not be available, but showing the minimum Arkady version helps users understand how to upgrade.

Meta.Version Reference

Manifest Version Description
0.0.2 As ToolProviderType now supports mcp, an elder implementation is going to broken when user selected a mcp tool in Arkady, so we bump it to 0.0.2 to ensure Arkady knows that mcp is disabled if meta.version under 0.0.2.
0.0.1 Initial release

Meta.MinimumArkadyVersion Reference

Minimum Arkady Version SDK Version Description
1.2.0 0.2.0 Support fetching application info
1.4.0 0.0.1-beta.49 Support LLM multimodal output
1.4.0 0.3.1 Support OAuth functionality for plugins
1.5.1 0.4.0 Support dynamic-select parameter type
1.5.1 0.4.0 Support LLM structured output
1.6.0 0.4.1 Support dark-icon field in manifest
1.7.0 0.4.2 Support OAuth functionality for plugins
1.8.1 0.4.4 Support filename in MultiModalPromptMessageContent
1.9.0 0.5.0 Support Datasource functionality for plugins
1.10.0 0.6.0 Support Trigger functionality for plugins
1.11.0 0.7.0 Support Multimodal Reranking / Embeddings
1.14.0 0.8.1 Dependency and project structure cleanup
1.14.2 0.9.0 Support polling-based LLM plugin invocations

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arkady_plugin-0.10.2.tar.gz (320.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arkady_plugin-0.10.2-py3-none-any.whl (380.1 kB view details)

Uploaded Python 3

File details

Details for the file arkady_plugin-0.10.2.tar.gz.

File metadata

  • Download URL: arkady_plugin-0.10.2.tar.gz
  • Upload date:
  • Size: 320.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.8

File hashes

Hashes for arkady_plugin-0.10.2.tar.gz
Algorithm Hash digest
SHA256 c8df14c01c3b6e7f7ccc4f16335311fcdcfeada5db9fd49df85d8616de93a661
MD5 4f5a5b47a5e096ab32d7f6ff3d41fb7d
BLAKE2b-256 567d43fe3414ac225d0f79e1c7bc0c3e5a29ba263a16a8009d3f83ea5364e7f0

See more details on using hashes here.

File details

Details for the file arkady_plugin-0.10.2-py3-none-any.whl.

File metadata

  • Download URL: arkady_plugin-0.10.2-py3-none-any.whl
  • Upload date:
  • Size: 380.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.8

File hashes

Hashes for arkady_plugin-0.10.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a3165b97a949f7375db672b1538c6e9291b4149ba4dadb63ca5d53b1b9b76440
MD5 0d155b2dc19de1b396691ff335ee10dd
BLAKE2b-256 ba6b88572f3bf8d7a4df8d29bc386cb522ad91db5692ebb486eafafa25742454

See more details on using hashes here.

Release history Release notifications | RSS feed

0.10.3

2 files

This release

0.10.2 This release

2 files

0.10.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page