Skip to content

AgenticFish/skewr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

skewr

An AI Agent project built with Dart. Interact with LLMs through a CLI or Flutter app.

Demo

skewr CLI demo

Project Structure

skewr/
├── chat_core/       # Core library - conversation, tool calling, event stream
├── chat_adapter/    # BLoC state management, adapter between Core and UI
├── skewr_cli/       # Command-line interface
└── skewr_app/       # Flutter app (future)

Dependency direction: skewr_cli / skewr_app → chat_adapter → chat_core

Getting Started

Prerequisites

  • Dart SDK ^3.8.0
  • A Portkey API key

Configuration

Create a local.properties file in the project root:

portkey-api-key=your-api-key
portkey-model=@provider-slug/model-name

Optional:

portkey-base-url=https://api.portkey.ai
portkey-max-tokens=1024

Configuration can also be set via environment variables (PORTKEY_API_KEY, PORTKEY_MODEL, PORTKEY_BASE_URL, PORTKEY_MAX_TOKENS) or CLI arguments (--api-key, --model, --base-url, --max-tokens).

Priority: CLI arguments > local.properties > environment variables.

Run the CLI

cd skewr_cli
dart pub get
dart run bin/skewr_cli.dart

Or with CLI arguments:

dart run bin/skewr_cli.dart --api-key your-key --model @openai/gpt-4o

Development

# chat_core
cd chat_core
dart pub get
dart run build_runner build
dart test

# chat_adapter
cd chat_adapter
dart pub get
dart test

# skewr_cli
cd skewr_cli
dart pub get
dart test

License

MIT

About

An AI Agent project built with Dart. Interact with LLMs through a CLI or Flutter app.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages