0.21.0 (2025-10-22)
- chat event get's reasoning variant
- unify function and tool concepts
- remove explain functionality in 0.4 wit world
- introduce 0.4 wit world
- remove llama3 submodule in favour of inference provided tool calling
- add reasoning trace to Message class (7f0b763)
- allow multiple tool calls (d60d81c)
- chat event get's reasoning variant (59aaff0)
- introduce 0.4 wit world (be3c855)
- message writer accepts reasoning events (ebe88e4)
- prototype agent decorator (28ec298)
- remove explain functionality in 0.4 wit world (ae125c7)
- remove llama3 submodule in favour of inference provided tool calling (f29dec0)
- remove logprobs from 0.4 chat event (d0f7ea2)
- unify function and tool concepts (bd48ed5)
- wit 0.4 is stable (6d5008f)
- only construct span exporter if corresponding env variable is set (79b1ac4)
- serialization of chat request (bee58ca)
- add hans as author (f916d00)
- rename kernel to engine (f7a5434)
- rename project in rtd to pharia-skill (e2cf060)
- update readme with right command to run componentize-py (59a6e9f)
0.20.0 (2025-10-02)
- remove original otlp studio custom format exporter
- add attributes required for pydantic logfire rendering (f9b8690)
- add gen ai otel attributes for completion request (965c3a7)
- add gen_ai otel attributes to chat methods (1f62845)
- add otel gen_ai attributes for completion requests (8591483)
- add StudioOTLPSpanExporter and StudioSpanProcessor (5c6d9fe)
- assert if pharia ai is outdated (60f023f)
- enhance DevCsi to support multiple span exporters (3bff06d)
- improve system prompt for tool calling (7801933)
- remove deprecated with_studio method, use DevCsi(project='...') instead (4fa1405)
- remove original otlp studio custom format exporter (a8eb5e9)
- respect genai conventions around span names (f332311)
- set langfuse completion start time to support ttft calculations (bb69e87)
- also install opentelemetry exporter in pre-commit mypy env (c8713ec)
- do not make opentelemetry a dependency of the wasm component (5f12a63)
- expose ToolCallRequest top-level (c73a809)
- extract project id from json response (342ccf4)
- good error msg when listing tools without namespace (9bdfcef)
- specify that the sdk requires python >=3.11.0,<3.12 (8ccee0a)
- typo (825a5ca)
- give more context in README.md (fc96070)
- improve quick start guide (0c4209d)
- remove unused input variable in example code snippet (a222a48)
- specify option to export traces to langfuse (42842cf)
- specify that concurrent csi methods preserve order (3df182e)
- update quick start guide to include optional environment variable for PhariaStudio address and tracing in DevCsi (53244c0)
0.19.2 (2025-07-09)
- support markdown tool calling (016202e)
- fix syntax highlighting for TOML code blocks (f4e2b19)
0.19.1 (2025-07-07)
- add message helper method to ChatStreamResponse (0f2e904)
- rename message to consume_message as it is consuming (a6c1d06)
- improve consume_message doc string (83125b5)
0.19.0 (2025-07-07)
- make _peek and _peek_iterator methods on ChatStreamResponse private
- make _peek and _peek_iterator methods on ChatStreamResponse private (e60c1b9)
0.18.0 (2025-07-05)
- introduce chat_stream_with_tools method on csi that invokes tools
- change order of tools and params (05308d3)
- chat stream takes tool input (1a687eb)
- deprecate the llama3 module (6f7fc07)
- introduce chat_stream_step method (0305e1d)
- introduce chat_stream_with_tools method on csi that invokes tools (ca6e475)
- make Tool public in pharia-skill and csi module (80b33f0)
- reconstruct chat and completion from stream when tracing (f9478cb)
- record message stream output on studio trace (ddefe32)
- add sphinx warning for llama module deprecation (2c2c3d2)
- add tool calling section to core concepts (14892fd)
- add tool calling section to how-to (5d3ac5f)
- fix typos (84fc35b)
- remove llama3 tool calling example (66b5860)
- specify what tool parameter does on chat_stream (a9cd3ae)
- streamline with tool section in from AA docs (87f825d)
- switch to md reference format (05653e4)
0.17.0 (2025-07-02)
- handle tool calling for chat_stream if tools provided
- accept messages in ChatSession construction
- use CSI from self
- inspect and return tool call request directly when streaming with tool
- rename ToolCallRequest and add render message methods
- move Message and Role to common inference_types module
- move common types to inference_types module
- update chat_stream to accept tool names
- accept kwargs as arguments for invoke_tool
- accept kwargs as arguments for invoke_tool (3374fc5)
- accept messages in ChatSession construction (e7140e9)
- add run method to chat session (1ae695f)
- add tool_call method to ChatStreamResponse (43b7a0a)
- add unstable JSON schema method for tool (5121648)
- better error msg if client fails to connect (2dbfb54)
- enable adding additional source paths (3a3cadb)
- expose tool error in csi (49c4191)
- handle tool calling for chat_stream if tools provided (a17c969)
- implement list_tools for CSIs (5a791f9)
- introduce chat session in sdk (175afec)
- parse tool calls on the fly (352c627)
- port web search example to streaming (1ed4064)
- project can be specified in DevCsi constructer (6760310)
- provide default params in CSI methods (befd989)
- raise tool errors as exception (1940bb2)
- tools can be rendered in chat request (8aef198)
- update chat_stream to accept tool names (b918606)
- update to WIT package v0.3.11 with stabilized tool interface (8a2c675)
- use CSI from self (386cc05)
- use pydantic's built in json serialization instead of json.dumps (68cd577)
- more resiliant tool call parsing (39e72c4)
- add examples for invoking tools (fceaf8a)
- add test for news_summarizer skill (c0d7ac6)
- add web research example (4f42724)
- clarify what chat requests are (8617ae9)
- document methods on chat session (d1479ab)
- explain tool error more concise (7ebc2c4)
- fix chat_stream usages in examples (2b3dfa7)
- fix wrong method name in doc string (609b19c)
- more precise doc string for parse_tool_call (9be2417)
- update chat_stream (393554d)
- update docs for building docs (ffcae6c)
- update example with chat session (3622974)
- update news_summarizer skill to match brave_search updated output format (eac6795)
- use stream_with_tool (ed29085)
- use UPPER_CASE for constant system prompt (81d34fc)
- inspect and return tool call request directly when streaming with tool (6b4b2b6)
- move common types to inference_types module (caeb11c)
- move Message and Role to common inference_types module (4c0b04f)
- rename ToolCallRequest and add render message methods (607b755)
0.16.6 (2025-06-20)
- allow DevCsi namespace to be configured for tool invocation (5adf08e)
- expose invoke tool in csi (99b41c0)
- implement invoke_tool in DevCsi (c6a560c)
- import unstable bindings for tools on demand (d567b59)
0.16.5 (2025-06-18)
- load dotenv file before retrieving env variables (4a80c9c)
0.16.4 (2025-06-17)
- fix typos (6038c63)
0.16.3 (2025-06-17)
- update description (0960bec)
0.16.2 (2025-06-17)
- package wasi wheels together with the sdk (47d5f6b)
- move setup of wasi_deps outside of spinner (b2108ed)
0.16.1 (2025-06-10)
- handle logprob deserialization for NaN (b737b1f)
- fix typo (55e9435)
0.16.0 (2025-06-03)
- support echo parameters in completion request
- support echo parameters in completion request (c78ea2b)
0.15.0 (2025-05-19)
- rename offset field on chunk to character offset
- validate types passed to the csi with pydantic dataclasses
- validate types passed to the csi with pydantic dataclasses (173ad09)
- rename offset field on chunk to character offset (85dcf66)
0.14.2 (2025-05-16)
- separate paragraph (7e59f15)
0.14.1 (2025-05-16)
0.14.0 (2025-04-30)
- make document path hashable to simplify unique filtering
- add tracing to message stream skills (645f6b3)
- expose StreamResponses (decd195)
- good error message when zlib is imported in skill build step (e5772fe)
- make document path hashable to simplify unique filtering (30e59c5)
- move opentelemtry to inside trace skill (ac641d7)
- raise value errors if prefixes do not match expectation (dd475dc)
- trace message writer interactions (139cf05)
- treat unset status as OK when converting to studio format (42f984b)
- how to do streaming (3ca4b18)
- remove default values which might be confusing (73f4727)
- remove link to product playground (d3eeeaa)
- set --no-interactive flag in building step (7a4a4ef)
- set --no-interactive flag in building step (cef9c1b)
- specify concurrent ordering in doc-string (e87bba7)
- specify meaning of env variables (da3a4d7)
- specify OCI registry is needed (22c6b0c)
- specify what a namespace name is (60735de)
0.13.1 (2025-03-31)
- specify authorization header for running Skill (14bb963)
0.13.0 (2025-03-31)
- do not inspect skill module, user needs to indicate if building a streaming skill
- do not inspect skill module, user needs to indicate if building a streaming skill (61d0cd6)
- forward payload to other methods (a9ad4fc)
0.12.0 (2025-03-30)
- remove the interface to stream ChatEvent directly
- remove accumulation of stream content
- remove
chatdecorator
- remove
chatdecorator (3693864) - remove accumulation of stream content (8f3e47b)
- remove the interface to stream ChatEvent directly (20aa8f3)
0.11.2 (2025-03-30)
- allow MessageWriter to consume response stream directly (e392fa5)
0.11.1 (2025-03-28)
- store content for completion and chat stream (761d341)
0.11.0 (2025-03-28)
- add method for ChatStreamResponse to stream the full message
- inject MessageStream into the correct scope (0bec317)
- mask traceback if publish failed (410c28d)
- set max tokens to limit execution duration (f0e505e)
- use root model for chat skill to be compliant with test script (2133690)
- verify input_model is a type before checking subclass (05e0ee3)
- add example for using
chatdecorator (2e4cc4a) - update code example to new methods class names (ca2767b)
0.10.0 (2025-03-28)
- rename interface to MessageWriter
- rename interface to MessageWriter (f401ddc)
- add example for message stream skill (88afe54)
0.9.0 (2025-03-28)
- move decorator to skill module
- add DevResponse to test stream skill output (22676e5)
- dynamically calculate wit world when building component (c4f0e44)
- make response generic over payload (8c9e0dd)
- make sure message stream decorator is used only once (c773550)
- stabilize streaming (701b8db)
- upgrade to pharia:skill@0.3.6 (5da7d21)
- only import bindings for message-stream-skill inside message_stream decorator (62ee9da)
- target new 'message-stream' endpoint (32fd184)
- generate bindings for all wit worlds (0cefa2f)
- specify code example in message stream docstring (8442b49)
- specify why bindings imports are inside decorator (7406e2c)
- move decorator to skill module (f011b21)
0.8.1 (2025-03-27)
- merge documentation for contributing (3c6c9c1)
0.8.0 (2025-03-27)
- update package name from pharia-kernel-sdk-py to pharia-skill
- add chat_stream CSI function (60afd5e)
- add completion_stream CSI function (134c953)
- implement ChatStreamResponse as context manager (38ef434)
- implement CompletionStreamResponse as context manager (8a168cc)
- include event data in error case (e124881)
- streamline streaming interface for completion and chat (9e59394)
- update package name from pharia-kernel-sdk-py to pharia-skill (f0a6250)
- update pharia-skill-cli to use GitHub releases (0f52bbf)
- avoid using bindings for unstable types (cc16098)
- call super init on chat stream to poll first message (2ae9f60)
- chmod on wrong file (6739d33)
- do not use unstable feature in signatures (4316900)
- add apache-2.0 license (61a126f)
- add comment about decorator usage pattern (7b7f062)
- add links for registry (29d83e7)
- add prerequisites to quick_start (9fb42c0)
- cleanup invocation docs (a3a710f)
- Fix broken link (8748292)
- improve core_concepts description of Skill (21bc122)
- pull in changes from other public docs (c7cea97)
- refactor introduction and USP narrative (3798d20)
- reference generator expression (80c5c1e)
- remove jfrog installation references (7cf8530)
- remove jfrog token env variable (0542d0e)
- specify frozen flag when syncing dependencies (4d55715)
- specify usage of unstable features in glue code (1f7eecd)
- typo (47f5fc8)
- typo (cc44517)
0.7.1 (2025-03-06)
- state that search and document relate to Document Index (16779b6)
0.7.0 (2025-03-03)
- stabilize new chunking
- stabilize new chunking (db0a330)
0.6.3 (2025-02-27)
- add interactive publish to cli (60ac743)
- handle error if env vars for skill registry not set (219f5a1)
- do not import unstable wit params to not break componentize-py build (00d657d)
- update to use Pharia Studio project ID (b2e5960)
0.6.2 (2025-02-24)
- use three letter abbreviation for languages (4b74ee3)
0.6.1 (2025-02-24)
- _explain beta (de1af34)
- add explain wit world and new bindings (f98a402)
- add stable support for explain in csi (257aab3)
- display publish CLI subcommand after successful build (691a8de)
- migrate CLI to Typer (75601e4)
- remove log level (a6c8684)
- support custom name when publishing Skill (7f076e8)
- update help message for CLI arguments (ba668ea)
- avoid using backslash in f-string expression to support older Python versions (326b9cc)
- do not use bindings of unstable types (3b7d394)
- remove outdated Pydantic WASI wheels (706fa0c)
0.6.0 (2025-02-13)
- release 0.6.0
- release 0.6.0 (e76647e)
- import RootModel in decorator to avoid failing runtime import (cc5d83a)
0.5.13 (2025-02-13)
- support v0_3 wit world in SDK (ee1db95)
- represent token as bytes type and add deserialization logic for dataclass (ceb2be1)
- require datetimes to be tz-aware, but not necessarily utc (5b429f4)
- minor typos (a402e96)
0.5.12 (2025-02-06)
- add copy button to code snippets (edbec02)
- add faq section (4703807)
- add missing env variables to quick start (6912928)
- add section about dependencies (57b9ace)
- fix imports in code examples (1405dbe)
- fix install instruction in README (fe78934)
- fix installation instructions in quick start (82db0dd)
- give example of stub csi usage (edd31c1)
- increase max width so code blocks are rendered on one line (47604bd)
- link core concepts csi (ecef4b6)
- make sidebar smaller (0cc1ef1)
- remove link to p-prod values file (ec10ed5)
- remove skill development section from README (ee2f0c4)
0.5.11 (2025-01-28)
- support new uuid format for studio project ids (9ce6fd3)
- do not include sphinx in package dependencies (e3edc87)
0.5.10 (2025-01-24)
- parse message role when deserializing in dev csi (46b7c3b)
0.5.9 (2025-01-23)
- document can be requested from csi (9753b05)
- forward kernel error message for all status codes (545dd0d)
- specify schema for tools (eca847e)
- add namespace section to core concepts (8c8dad1)
0.5.8 (2025-01-21)
- add build in tools to chat request (59dda00)
- add helper method to construct message from tool response (f85fde9)
- add llama3 chat request and response (2f16f4c)
- add run method to code interpreter (2e240ee)
- built in tools are also specified as types (9eac271)
- built in tools return typed arguments (3d97d83)
- chat function becomes method on request (5ee58c6)
- convert tool calls to prompt again (a5b1e8b)
- custom tools are serialized to user prompt (47e764d)
- eval for function calling (bb28f86)
- expose chat function fro llama module (60128b2)
- move system prompt out of message list (08e4011)
- parse build in tool calls from reply (03855f5)
- parse built in tool calls (4eec237)
- pass tool response back to the model, limit to one tool call for now (a7325cf)
- provide current date to the model in system prompt (2fc53bf)
- provide custom init for dataclasses to deny setting the role (f4bd081)
- put json based tools into system prompt (9f35ed8)
- remove title key from serialized json schema (11772bc)
- serialize built in tools as dict (fb1b1c5)
- tool call result can be added to existing chat request (1aba0d4)
- validate function arguments with provided pydantic model (b4d97e1)
- also serialize json function calls (0475387)
- deserialization of tool call (3b5a451)
- do not exclude role field from init which breaks pydantic 2.10 deserialization (f376e32)
- do not provide default implementation to avoid type errors (26defd9)
- import typed dict from typing extensions for version compatibility (e4fa87c)
- make tool response serializable (113d645)
- model dump of tool definition (2b25b61)
- only render the tools in the first user message (2502e04)
- prompt rendering of tool call (8f58be8)
- remove duplicate python tag definition (0b8a0b9)
- split assistant message into distinct classes and fix deserialization (f9f8822)
- add comment about whitespace stripping (07513e9)
- add doc string for render tool call (1bdb69e)
- add links for tool output format (951d96e)
- add README.md about different purpose of docs sections (29fa407)
- add section about function calling (5546f61)
- always write skill in upper case (95a57b9)
- fix outdated doc string on message module (ad5fbfe)
- fix typo (9bf8ad1)
- remove function call specific stuff (50870e4)
- remove image of exhausted sloth (a2b042b)
- remove llama submodule (34263ff)
- rename building to how-to (894fd23)
- restructure read the docs, add a new theme and more content (8eadc25)
- specify chat request abstraction (d6d4077)
- specify why ipython is always activated if any tool is provided (83e2a75)
- specify why json based tools are put into user prompt (4c76c5b)
- streamline USPs (306cd3a)
- use absolute image import path (ee11eeb)
0.5.7 (2025-01-09)
- specify sdist and wheel for poetry build to succeed (2700a87)
0.5.6 (2025-01-09)
- specify package format type for pharia_skill (4443294)
0.5.5 (2024-12-20)
- update internal string representation of role enums to lower case (ecd85bc)
- add section about exposing internal types (57f5dd0)
0.5.4 (2024-12-17)
- add document metadata to csi protocol (f030990)
- add unstable option for building (fcb29ae)
- implement document metadata for WASI CSI (9de4a55)
- add command to generate bindings with unstable features (08c93dc)
0.5.3 (2024-12-10)
- bump cli version to latest (e2fc319)
0.5.2 (2024-12-10)
- allow specifying skill tag (6be9f16)
0.5.1 (2024-12-09)
- incompatible method override (4a6cbf8)
0.5.0 (2024-12-05)
- rename env variable to Pharia AI token
- rename env variable to Pharia AI token (683e270)
- migration (1551931)
- update example Pharia Kernel endpoint (8959f48)
0.4.1 (2024-11-28)
- create projects in studio on dev csi creation (00f9814)
0.4.0 (2024-11-28)
- change *PASSWORD to *TOKEN
- Replace password with token in skill registry (451138a)
0.3.4 (2024-11-20)
- Add testing and studio modules to documentation (dc0738e)
- remove duplicate requests from haiku example (9d652a8)
- update documentation and module structure (79ded72)
- update README with link to Pharia Kernel (0e28a74)
0.3.3 (2024-11-19)
- always overwrite existing trace exporter (4d27a86)
- dev csi eports optl spans (49ca5bf)
- DevCsi offers flush collector method (b63aca7)
- DevCsi offers helper to set up studio exporter (8387ff2)
- make sure only one studio exporter is registered per thread (f50aee7)
- more explicit event name for exceptions (8dd902a)
- provide translation between otel traces and studio format (88d137e)
- set error message for studio event message field (3543133)
- upload traces as soon as root span ends (cbc7149)
- allow arbitrary input/output for tracing (80fbe76)
- do not include function and version in trace (118c154)
- submit spans in trace batches (f39abc8)
- add doc string to with_studio method (38c20b7)
- add example of how to do tracing with studio (6598d85)
- use double quotes in code example multi line string (44ff2d8)
0.3.2 (2024-11-18)
- add docs section in poetry extra for sphinx (71703ed)
- add link to SDK documentation (4494ecf)
- Add Sphinx documentation and Read the Docs configuration. (79ea956)
- update CSI protocol and skill decorator (349fc4b)
0.3.1 (2024-11-15)
- add Heidelberg example and test show casing rag (3d9350b)
- Add summarization skill and tests in examples (496efa2)
- make min_score parameter optional (a3089d6)
- doc strings on csi functions added (e4945d6)
- simplify csi imports and add missing dataclasses (be1708a)
- update haiku.py to use BaseModel (5e9e650)
- Update pharia-skill-cli binary check, pydoclint suggestion (917e0a6)
0.3.0 (2024-11-11)
- only allow pydantic output models
- support pydantic models, str and none as output
- handler can report input schema (65ff839)
- only allow pydantic output models (aeb9805)
- skill handler reports output schema (017115a)
- support pydantic models, str and none as output (a9e6205)
- remove outdated WASI dependencies (93aebd5)
0.2.8 (2024-11-07)
- windows support, path and no chmod (ba93958)
0.2.7 (2024-11-07)
- forward exit code from subprocess (2ee7e29)
0.2.6 (2024-11-04)
- update ruff to 7.2.0 (30cb1f5)
0.2.5 (2024-10-30)
- only close session if set (76383c5). This prevents a second exception to be raised if the init fails if e.g. an env variable is not set.
0.2.4 (2024-10-25)
- remove Err dataclass and use wit.types Err (eb54df3)
0.2.3 (2024-10-25)
- translation of wasi role which caused skill runtime errors (e49c58e)
0.2.2 (2024-10-24)
- csi owns message and chat response classes (567dde6)
0.2.1 (2024-10-23)
- add chat support (544b3f5)
0.2.0 (2024-10-18)
- allow providing skill registry user name to broaden registry support
- allow providing skill registry user name to broaden registry support (018f057)
0.1.8 (2024-10-18)
- expose all csi interfaces toplevel (cc9cd23)
0.1.7 (2024-10-18)
- add search to csi (aaad8ed)
0.1.6 (2024-10-01)
- invalidate skill in namespace (0fd142a)
0.1.5 (2024-10-01)
- log result of skill publishing to stdout (07f1eed)
0.1.4 (2024-10-01)
- add error handling to subprocess runs (3aa8363)
- do not require .wasm extension when publish command (702d1c7)
0.1.3 (2024-10-01)
- add cli commands for building and deploying (3145f1b)
0.1.2 (2024-09-27)
- invoke wasi csi before passing it to skill (090b49d)
0.1.1 (2024-09-27)
- adapt to csi hosted on existing kernel url (c33c9c2)
- cache requests session (dfc52df)
- promote DevCsi as public API (8657225)
- show error message from HTTP request in DevCsi (7c06274)
- add skill macro (8272efa)
- add the skill.wit and the generated bindings to the module (333fa97)
- assert that @skill is only used once (30f478b)
- correct error type if skill handling fails (e90a2d9)
- forward wit bindings to main sdk module (176d0c3)
- inject CSI as part of the skill decorator (2cd7ad3)
- integrate pydantic version 2.5.2 with WASI support (f6f7d72)
- no longer necessary to find location of skill.wit (35f6359)
- provide defaults for CompletionParams (b5f33fb)
- provide protocol for Csi (092e3d7)
- provide StubCsi for testing (1138435)
- skill decorator parses input to pydantic model (180ae03)
- skill decorator serialize output as json byte string (c94c525)
- use llama 3.1 prompt syntax in example (6ca6f82)