Skip to content

czottmann/pi-cortecs

 
 

Repository files navigation

pi-cortecs

Cortecs provider extension for pi. It registers tool-capable Cortecs models under the cortecs provider.

Requirements

npm install -g @earendil-works/pi-coding-agent

Install

From npm:

pi install npm:pi-cortecs

From a local checkout:

cd path/to/pi-cortecs
npm install
npm run build
pi install "$PWD"

The package loads dist/index.js, so local installs need a build first.

Set up auth

Use pi's API-key flow:

pi
/login
# Choose "Use an API key", then "Cortecs".

Or set an environment variable before starting pi:

export CORTECS_API_KEY=your-key-here

Cortecs currently uses static API keys. It should appear under API keys in /login, not under subscriptions.

Use

List registered models:

pi --list-models | grep cortecs

Start pi with Cortecs:

pi --provider cortecs

In interactive mode, /cortecs-models lists the Cortecs models registered by the extension.

How it works

On startup, the extension fetches GET https://api.cortecs.ai/v1/models, keeps models tagged with Tools, and registers them with pi.registerProvider() using pi's openai-completions API adapter.

Model metadata is derived from the Cortecs catalog:

  • context_size becomes pi's context window.
  • pricing.input_token, pricing.output_token, pricing.cache_read_cost, and pricing.cache_write_cost become pi cost metadata.
  • Image adds image input support.
  • Reasoning marks a model as reasoning-capable.

If CORTECS_API_KEY is present, it is sent when fetching the catalog. The catalog is public at the time of writing, so models can still be registered without the key. Inference still needs either a saved API key from /login or CORTECS_API_KEY.

Development

npm run check
npm run build
pi -e . --provider cortecs

Publishing

GitHub Actions publishes the package to npm when a GitHub Release is published. The release tag must match package.json exactly, with or without a leading v (v1.0.0 and 1.0.0 both work for version 1.0.0).

The workflow uses npm Trusted Publishing, so it does not need an npm token secret. Configure this package on npm with this repository and workflow file (.github/workflows/publish.yml). The workflow builds the package, runs npm run check, and publishes with npm provenance.

Acknowledgements & thanks

This project started as a fork of tokenfactory-pi by mosquito. Thanks to the original author for the clean starting point.

About

Cortecs provider extension for pi coding agent. (Cortecs is a European LLM router. I'm a customer.)

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • TypeScript 100.0%