Skip to main content

Skill contract for the Ageri personal-AI platform — SkillBase, SkillResult, Task, OrchestratorContext, and proxy ABCs.

Project description

ageri-sdk

Skill contract for the Ageri personal-AI platform.

Ageri is a self-hosted "chief of staff" agent system that runs 24/7, remembers across sessions, and coordinates specialist skills across every domain of your work. This package is the stable boundary every skill imports from — the abstract base classes, dataclasses, and helpers that define what a skill looks like to the Ageri runtime.

If you want to author an Ageri skill, install this package. If you want to run Ageri itself, see docs.ageri.ai/install.


Install

pip install ageri-sdk

Python 3.11+ required. No runtime dependencies — the SDK is pure ABCs + dataclasses. Skills declare their own deps in their bundle's requirements.txt.

Minimal skill

from ageri_sdk import SkillBase, SkillResult, Task, OrchestratorContext


class HelloSkill(SkillBase):
    name = "Hello"
    description = "Greets the user."
    version = "0.1.0"
    intent_domain = "general"

    async def handle(self, task: Task, ctx: OrchestratorContext) -> SkillResult:
        return SkillResult(
            status="done",
            response=f"Hello, {ctx.user.display_name}!",
        )

That's the whole contract. The runtime injects an OrchestratorContext with proxies for memory, agents (LLMs), reply, browser/screen/input automation, and so on. Your handle() does the work and returns a SkillResult.

What's in the package

  • SkillBase — abstract base every skill subclasses.
  • Task — what the user asked for + routing metadata.
  • SkillResult — what the skill produced (response + declared memory writes).
  • OrchestratorContext — the only interface skills have to the outside world. Memory, agents, reply, user, agent identity, tools.
  • Proxy ABCsMemoryProxy, AgentProxy, ReplyProxy, BrowserProxy, ScreenProxy, InputProxy, FsProxy, NetworkProxy, ClipboardProxy, ProcessProxy. Skills code against these; the runtime supplies concrete implementations.
  • HelpersSkillCommand (slash-command metadata), ConfigField (declarable config schema), MessagingSkillBase (Slack/Telegram/Zalo-OA adapter base), vision-click + browser-automation primitives, and more.

Full API reference: https://docs.ageri.ai/sdk/.

Versioning

ageri-sdk follows semver. The major version bumps if the contract breaks (adding a required method to SkillBase, changing a dataclass field that already-shipped skills rely on, etc.). Minor versions add new capabilities; patch versions are bugfixes.

Skill bundles declare their compatible SDK range via manifest_compat in skill.json:

{
  "manifest_compat": ">=0.5.0,<1.0.0"
}

The Ageri runtime refuses to load a skill whose manifest_compat doesn't include the running SDK version.

License

MIT. See LICENSE.

The Ageri platform that consumes this SDK has its own license (see the main Ageri repo). The SDK is MIT so skill authors can freely build on it, publish skills under whatever license they choose, and integrate against Ageri without IP friction.

Project details


Download files

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

Source Distribution

ageri_sdk-0.5.0.tar.gz (35.1 kB view details)

Uploaded Source

Built Distribution

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

ageri_sdk-0.5.0-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file ageri_sdk-0.5.0.tar.gz.

File metadata

  • Download URL: ageri_sdk-0.5.0.tar.gz
  • Upload date:
  • Size: 35.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ageri_sdk-0.5.0.tar.gz
Algorithm Hash digest
SHA256 16efe827d1ec4c7fdcccf80d6d140190e678d23ab0b87f70ecde06cc739d98c3
MD5 a0363f026ff6df8db91a0d6ef422b22b
BLAKE2b-256 816f750a2e9242688e292aa3119e875bbb5dbc65ee89ca84ba8bb1f455a3bbbe

See more details on using hashes here.

Provenance

The following attestation bundles were made for ageri_sdk-0.5.0.tar.gz:

Publisher: release.yml on ageri-platform/ageri-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ageri_sdk-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: ageri_sdk-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 33.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ageri_sdk-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fb7334eecfbbdffda909e56f99b3cde97dbe7de0a7402280fb8bf6aa669f2155
MD5 f199b32ec78d2ca164b26fca687c036b
BLAKE2b-256 1d1f3da9608205433c812316da0935a90addf753897d8dbcb7b0ffcc7f73e47a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ageri_sdk-0.5.0-py3-none-any.whl:

Publisher: release.yml on ageri-platform/ageri-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page