Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
91c7106
support $ARGUMENTS and positional argument substitution from workspac…
dnatag Oct 22, 2025
162a049
Merge branch 'aws:main' into feature/support-arguments-substitution-f…
dnatag Oct 24, 2025
884b27f
feat: Updates models to match latest, including endpoint resolver (#3…
kensave Oct 24, 2025
d8c704d
redirect chat output to stdout (#3277)
evanliu048 Oct 27, 2025
27777c6
fix: removes color from spinner (#3278)
dingfeli Oct 27, 2025
00a935a
Fix fs-write diff colors (#3280)
kkashilk Oct 27, 2025
b315782
Fix fs-write diff colors for background (#3281)
kkashilk Oct 27, 2025
830c06a
fix: spinner not being cleaned up properly (#3282)
dingfeli Oct 27, 2025
31f80f6
chore: bump version to 1.19.1 (#3283)
evanliu048 Oct 27, 2025
c70cb13
fix: install cross using --locked (#3286)
brandonskiser Oct 27, 2025
7f230e0
Revert "feat: Updates models to match latest, including endpoint reso…
brandonskiser Oct 28, 2025
a275492
chore: bump version to 1.19.2
brandonskiser Oct 28, 2025
2e67482
fix: racing condition on conduit when printing (#3308)
dingfeli Oct 29, 2025
13babcc
chore: version bump to 1.19.3 (#3310)
dingfeli Oct 29, 2025
7233186
refactor: migrate from directories to hierarchical paths module (#3309)
dk19y Oct 30, 2025
1d35262
Add auth login failure telemetry for cli (#3317)
abhraina-aws Oct 30, 2025
3a9214b
fix: expand ~ in prompt file:// URIs (#3301)
rationull Oct 30, 2025
f4fe86e
Refactor /Usage into smaller modules (#3324)
akhileshb Oct 30, 2025
4e7974b
feat: add agent crate (#3150)
brandonskiser Oct 30, 2025
8ff6db8
refactor: centralize environment variable access (#3315)
dk19y Oct 31, 2025
846669f
feat: warn when duplicate agents are found during load (#3335)
brandonskiser Oct 31, 2025
b364bf0
Upgrade delegate with better UX for notifications and change the file…
abhraina-aws Oct 31, 2025
51d0245
chore: move RTS code from agent crate to chat-cli (#3340)
brandonskiser Oct 31, 2025
5ea7f6a
fix: block dangerous patterns for tool calls (#3313)
ekang7 Oct 31, 2025
e3cf013
chore: remove duplicate and unused API code from the agent crate (#3342)
brandonskiser Nov 1, 2025
53133cd
support $ARGUMENTS and positional argument substitution from workspac…
dnatag Oct 22, 2025
33f680b
better error msg for splitting prompt input
dnatag Nov 3, 2025
0a681c3
Merge remote-tracking branch 'origin/feature/support-arguments-substi…
dnatag Nov 3, 2025
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
78 changes: 39 additions & 39 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,46 +75,46 @@ jobs:
- name: Run tests
run: cargo test --locked --workspace --lib --bins --test '*' --exclude fig_desktop-fuzz

cargo-clippy-windows-chat-cli:
name: Clippy Windows (chat_cli)
runs-on: windows-latest
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: dtolnay/[email protected]
id: toolchain
with:
components: clippy
- uses: actions/cache@v4
with:
path: |
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: cargo-clippy-windows-chat-cli-${{ hashFiles('**/Cargo.lock') }}-${{ steps.toolchain.outputs.cachekey }}
- run: cargo clippy --locked -p chat_cli --color always -- -D warnings
# cargo-clippy-windows-chat-cli:
# name: Clippy Windows (chat_cli)
# runs-on: windows-latest
# timeout-minutes: 60
# steps:
# - uses: actions/checkout@v4
# - uses: dtolnay/[email protected]
# id: toolchain
# with:
# components: clippy
# - uses: actions/cache@v4
# with:
# path: |
# ~/.cargo/registry/index/
# ~/.cargo/registry/cache/
# ~/.cargo/git/db/
# target/
# key: cargo-clippy-windows-chat-cli-${{ hashFiles('**/Cargo.lock') }}-${{ steps.toolchain.outputs.cachekey }}
# - run: cargo clippy --locked -p chat_cli --color always -- -D warnings

cargo-test-windows-chat-cli:
name: Test Windows (chat_cli)
runs-on: windows-latest
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
id: toolchain
with:
components: llvm-tools-preview
- uses: actions/cache@v4
with:
path: |
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: cargo-test-windows-chat-cli-${{ hashFiles('**/Cargo.lock') }}-${{ steps.toolchain.outputs.cachekey }}
- name: Run tests
run: cargo test --locked -p chat_cli
# cargo-test-windows-chat-cli:
# name: Test Windows (chat_cli)
# runs-on: windows-latest
# timeout-minutes: 60
# steps:
# - uses: actions/checkout@v4
# - uses: dtolnay/rust-toolchain@nightly
# id: toolchain
# with:
# components: llvm-tools-preview
# - uses: actions/cache@v4
# with:
# path: |
# ~/.cargo/registry/index/
# ~/.cargo/registry/cache/
# ~/.cargo/git/db/
# target/
# key: cargo-test-windows-chat-cli-${{ hashFiles('**/Cargo.lock') }}-${{ steps.toolchain.outputs.cachekey }}
# - name: Run tests
# run: cargo test --locked -p chat_cli

cargo-fmt:
name: Fmt
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -49,3 +49,4 @@ book/
.env*

run-build.sh
.amazonq/
104 changes: 101 additions & 3 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 4 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
[workspace]
resolver = "3"
members = ["crates/amzn-codewhisperer-client", "crates/amzn-codewhisperer-streaming-client", "crates/amzn-consolas-client", "crates/amzn-qdeveloper-streaming-client", "crates/amzn-toolkit-telemetry-client", "crates/aws-toolkit-telemetry-definitions", "crates/chat-cli", "crates/semantic-search-client", "crates/chat-cli-ui"]
members = ["crates/amzn-codewhisperer-client", "crates/amzn-codewhisperer-streaming-client", "crates/amzn-consolas-client", "crates/amzn-qdeveloper-streaming-client", "crates/amzn-toolkit-telemetry-client", "crates/aws-toolkit-telemetry-definitions", "crates/chat-cli", "crates/semantic-search-client", "crates/chat-cli-ui", "crates/agent"]
default-members = ["crates/chat-cli"]

[workspace.package]
authors = ["Amazon Q CLI Team ([email protected])", "Chay Nabors ([email protected])", "Brandon Kiser ([email protected])", "Felix Ding ([email protected])"]
edition = "2024"
homepage = "https://aws.amazon.com/q/"
publish = false
version = "1.19.0"
version = "1.19.3"
license = "MIT OR Apache-2.0"

[workspace.dependencies]
agent = { path = "crates/agent" }
amzn-codewhisperer-client = { path = "crates/amzn-codewhisperer-client" }
amzn-codewhisperer-streaming-client = { path = "crates/amzn-codewhisperer-streaming-client" }
amzn-consolas-client = { path = "crates/amzn-consolas-client" }
Expand Down Expand Up @@ -112,6 +113,7 @@ tempfile = "3.18.0"
thiserror = "2.0.12"
time = { version = "0.3.39", features = ["parsing", "formatting", "local-offset", "macros", "serde"] }
tokio = { version = "1.45.0", features = ["full"] }
tokio-stream = { version = "0.1.17", features = ["io-util"] }
tokio-tungstenite = "0.26.2"
tokio-util = { version = "0.7.15", features = ["codec", "compat"] }
toml = "0.8.12"
Expand Down Expand Up @@ -217,6 +219,3 @@ opt-level = 3

[profile.dev.package.similar]
opt-level = 3

[profile.dev.package.backtrace]
opt-level = 3
2 changes: 1 addition & 1 deletion build-config/buildspec-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ phases:
- . "$HOME/.cargo/env"
- rustup toolchain install `cat rust-toolchain.toml | grep channel | cut -d '=' -f2 | tr -d ' "'`
# Install cross only if the musl env var is set and not null
- if [ ! -z "${AMAZON_Q_BUILD_MUSL:+x}" ]; then cargo install cross --git https://github.com/cross-rs/cross; fi
- if [ ! -z "${AMAZON_Q_BUILD_MUSL:+x}" ]; then cargo install cross --git https://github.com/cross-rs/cross --locked; fi
# Install python/node via mise (https://mise.jdx.dev/continuous-integration.html)
- curl --retry 5 --proto '=https' --tlsv1.2 -sSf https://mise.run | sh
- mise install
Expand Down
98 changes: 98 additions & 0 deletions crates/agent/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
[package]
name = "agent"
authors.workspace = true
edition.workspace = true
homepage.workspace = true
publish.workspace = true
version.workspace = true
license.workspace = true

[dependencies]
amzn-codewhisperer-client.workspace = true
amzn-codewhisperer-streaming-client.workspace = true
amzn-consolas-client.workspace = true
amzn-qdeveloper-streaming-client.workspace = true
anstream.workspace = true
async-trait.workspace = true
aws-config.workspace = true
aws-credential-types.workspace = true
aws-runtime.workspace = true
aws-sdk-cognitoidentity.workspace = true
aws-sdk-ssooidc.workspace = true
aws-smithy-async.workspace = true
aws-smithy-runtime-api.workspace = true
aws-smithy-types.workspace = true
aws-types.workspace = true
base64.workspace = true
bstr.workspace = true
bytes.workspace = true
cfg-if.workspace = true
chrono.workspace = true
clap = { workspace = true, features = ["derive"] }
color-eyre = "0.6.5"
color-print.workspace = true
crossterm.workspace = true
dialoguer = { version = "0.11.0", features = ["fuzzy-select"] }
dirs.workspace = true
eyre.workspace = true
fd-lock = "4.0.4"
futures.workspace = true
glob.workspace = true
globset.workspace = true
http.workspace = true
http-body-util.workspace = true
hyper.workspace = true
hyper-util.workspace = true
libc.workspace = true
percent-encoding.workspace = true
pin-project-lite = "0.2.16"
r2d2.workspace = true
r2d2_sqlite.workspace = true
rand.workspace = true
regex.workspace = true
reqwest.workspace = true
rmcp = { version = "0.8.0", features = ["client", "transport-async-rw", "transport-child-process", "transport-io"] }
rusqlite.workspace = true
rustls.workspace = true
rustls-native-certs.workspace = true
schemars = "1.0.4"
semver.workspace = true
serde.workspace = true
serde_bytes = "0.11.19"
serde_json.workspace = true
sha2.workspace = true
shellexpand.workspace = true
strum.workspace = true
syntect = "5.2.0"
sysinfo.workspace = true
tempfile.workspace = true
thiserror.workspace = true
time.workspace = true
tokio.workspace = true
tokio-stream.workspace = true
tokio-util.workspace = true
tracing.workspace = true
tracing-appender = "0.2.3"
tracing-subscriber.workspace = true
url.workspace = true
uuid.workspace = true
webpki-roots.workspace = true
whoami.workspace = true

[target.'cfg(target_os = "macos")'.dependencies]
objc2.workspace = true
objc2-app-kit.workspace = true
objc2-foundation.workspace = true

[dev-dependencies]
assert_cmd.workspace = true
criterion.workspace = true
insta.workspace = true
mockito.workspace = true
paste.workspace = true
predicates.workspace = true
tracing-test.workspace = true

[lints]
workspace = true

Loading