Skip to content

sbakhtiarov/ai_advent_day_1

Repository files navigation

AI Advent Challenge Day 1

Kotlin/Native macOS CLI application that sends a prompt to OpenAI POST /v1/responses and prints the result.

Features

  • Uses OPENAI_API_KEY from environment variables.
  • Default mode (no flags): prints only assistant output_text.
  • Verbose mode (-verbose): prints full response JSON.
  • Uses kotlinx.serialization for JSON serialization/deserialization.
  • Layered structure:
    • presentation (CLI parsing/output)
    • domain (repository contract + result model)
    • data (repository implementation + HTTP transport + API DTOs)

Prerequisites

  • macOS
  • JDK 17+

Build

./gradlew linkReleaseExecutableNative

Run

Set API key:

export OPENAI_API_KEY="your_api_key"

Default mode:

./build/bin/native/releaseExecutable/macos-native-http-cli.kexe

Default mode with custom prompt:

./build/bin/native/releaseExecutable/macos-native-http-cli.kexe "Say hello in 5 words"

Verbose mode:

./build/bin/native/releaseExecutable/macos-native-http-cli.kexe -verbose "Say hello in 5 words"

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages