Commit Graph

17 Commits

Author SHA1 Message Date
Kayvan Sylvan
09e01eddf4 refactor: abstract chat message structs and migrate to official openai-go SDK
### CHANGES

- Introduce local `chat` package for message abstraction
- Replace sashabaranov/go-openai with official openai-go SDK
- Update OpenAI, Azure, and Exolab plugins for new client
- Refactor all AI providers to use internal chat types
- Decouple codebase from third-party AI provider structs
- Replace deprecated `ioutil` functions with `os` equivalents
2025-06-28 07:28:49 -07:00
Kayvan Sylvan
b3b1b5a471 chore: unify raw mode message handling and preserve env vars in extension executor
## CHANGES

- refactor BuildSession raw mode to prepend system to user content
- ensure raw mode messages always have User role
- keep existing user message when no systemMessage provided
- append systemMessage separately in non-raw mode sessions
- store original cmd.Env before context-based exec command creation
- recreate exec command with context then restore originalEnv
- add comments clarifying raw vs non-raw handling behavior
2025-04-21 17:04:11 -07:00
github-actions[bot]
e858700976 Update version to v1.4.128 and commit 2024-12-26 20:07:20 +00:00
Matt Joyce
7a26012457 Updated extension readme 2024-12-25 10:22:52 +11:00
Matt Joyce
ad561248fd fix:properly instatiated extensionManager var
fix:added timeout value validation
2024-12-25 09:41:49 +11:00
Matt Joyce
edb4490c86 Merge branch 'main' into feature/template-extensions 2024-12-24 13:12:13 +11:00
Matt Joyce
373c1d0858 added test pattern 2024-12-05 22:28:38 +11:00
Matt Joyce
ca55f2375d actually added tutorial 2024-12-05 22:13:17 +11:00
Matt Joyce
d8671ea03a Added example files and tutorial 2024-12-05 22:09:47 +11:00
Matt Joyce
c49f47ecab check extension names don't have spoaces 2024-12-05 20:39:40 +11:00
Matt Joyce
6fc75282e8 added tests for extension manager, registration and execution. 2024-12-03 23:28:47 +11:00
Matt Joyce
b31f094e9b Added better messages when adding and listing extensions
Fix issuse with listextension where it would fail if any hash had changed, now says hash failed.
2024-12-01 22:19:06 +11:00
Matt Joyce
43597e4168 Extension Registry Refinement
- Successfully implemented path-based registry storage
- Moved to storing paths instead of full configurations
- Implemented proper hash verification for both configs and executables
- Registry format now clean and minimal.

File-Based Output Implementation
- Successfully implemented file-based output handling
- Demonstrated clean interface requiring only path output
- Properly handles cleanup of temporary files
- Verified working with both local and remote operations
2024-12-01 18:04:11 +11:00
Matt Joyce
160703210b emplemented stdout template extensions 2024-12-01 09:13:22 +11:00
github-actions[bot]
edb814c9f0 Update version to v1.4.111 and commit 2024-11-26 09:43:27 +00:00
Matt Joyce
58f9d3c89c fix: process template variables in raw input
Process template variables ({{var}}) consistently in both pattern files
and raw input messages. Previously variables were only processed when
using pattern files.

- Add template variable processing for raw input in BuildSession
- Initialize messageContent explicitly
- Remove errantly committed build artifact (fabric binary in previous commit)
2024-11-23 08:27:56 +11:00
Matt Joyce
b6eb969b3a feat(template): implement core plugin system and utility plugins
Add initial set of utility plugins for the template system:
- datetime: Date/time formatting and manipulation
- fetch: HTTP content retrieval and processing
- file: File system operations and content handling
- sys: System information and environment access
- text: String manipulation and formatting operations

Each plugin includes:
- Implementation with comprehensive test coverage
- Markdown documentation of capabilities
- Integration with template package

This builds on the template system to provide practical utility functions
while maintaining a focused scope for the initial plugin release.
2024-11-21 14:27:22 +11:00