Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,261 changes: 1,186 additions & 75 deletions Cargo.lock

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ members = [
"src/ascend_tools/ascend-tools-core",
"src/ascend_tools/ascend-tools-mcp",
"src/ascend_tools/ascend-tools-cli",
"src/ascend_tools/ascend-tools-tui",
]
resolver = "3"

Expand Down
1 change: 1 addition & 0 deletions bin/check-js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#!/usr/bin/env bash
set -euo pipefail
cd "$(dirname "${BASH_SOURCE[0]}")/../src/ascend_tools/ascend-tools-js"
npm install --no-fund --no-audit
npm run build
npm test
3 changes: 3 additions & 0 deletions docs/cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -237,6 +237,9 @@ ascend-tools otto run "Help me debug this pipeline" --provider "OpenAI" --model
ascend-tools otto provider list
ascend-tools otto model list
ascend-tools otto model list --provider "OpenAI"

# Interactive chat (Ctrl+C to exit)
ascend-tools otto tui --workspace "My Workspace"
```

## Install AI assistant skills
Expand Down
1 change: 1 addition & 0 deletions src/ascend_tools/ascend-tools-cli/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ path = "src/main.rs"
[dependencies]
ascend-tools-core = { path = "../ascend-tools-core" }
ascend-tools-mcp = { path = "../ascend-tools-mcp" }
ascend-tools-tui = { path = "../ascend-tools-tui" }
clap = { version = "4.5", features = ["derive", "env"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
Expand Down
41 changes: 41 additions & 0 deletions src/ascend_tools/ascend-tools-cli/src/otto.rs
Original file line number Diff line number Diff line change
Expand Up @@ -199,6 +199,28 @@ pub(crate) enum OttoCommands {
#[command(subcommand)]
command: Option<ModelCommands>,
},
/// Interactive multi-turn conversation with Otto (Ctrl+C to exit)
Tui {
/// Workspace to use for context
#[arg(long)]
workspace: Option<String>,

/// Deployment to use for context
#[arg(long)]
deployment: Option<String>,

/// Use UUID instead of title
#[arg(long)]
uuid: Option<String>,

/// LLM provider to use (requires --model)
#[arg(long, requires = "model")]
provider: Option<String>,

/// LLM model to use
#[arg(long)]
model: Option<String>,
},
}

#[derive(Subcommand)]
Expand Down Expand Up @@ -370,5 +392,24 @@ pub(crate) fn handle_otto_cmd(
}
Ok(())
}
OttoCommands::Tui {
workspace,
deployment,
uuid,
provider,
model,
} => {
let runtime_uuid = client.resolve_optional_runtime_target(
workspace.as_deref(),
deployment.as_deref(),
uuid.as_deref(),
)?;
let otto_model = OttoModel::from_options(provider.as_deref(), model.as_deref());
let context_label = workspace
.as_deref()
.map(|w| format!("workspace:{w}"))
.or(deployment.as_deref().map(|d| format!("deployment:{d}")));
ascend_tools_tui::run_tui(client, runtime_uuid, otto_model, context_label)
}
}
}
1 change: 1 addition & 0 deletions src/ascend_tools/ascend-tools-cli/src/skill-cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ ascend-tools flow get-run <RUN_NAME> --workspace <TITLE> | --deployment <TITLE>
ascend-tools otto run "<PROMPT>" [--workspace <TITLE>] [--provider <NAME>] [--model <ID>]
ascend-tools otto provider list
ascend-tools otto model list [--provider <NAME>]
ascend-tools otto tui [--workspace <TITLE>]
Comment thread
lostmygithubaccount marked this conversation as resolved.
```

### Flow run spec
Expand Down
Loading
Loading