Skip to content
Closed
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
2 changes: 2 additions & 0 deletions .github/workflows/create-agent-standalone.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,12 @@ name: Create agent-standalone bundles
on:
push:
branches: [main, feature/*, release/agentic/*]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
if: github.event_name == 'push' || github.actor_id == github.repository_owner_id

steps:
- name: Checkout repository
Expand Down
14 changes: 4 additions & 10 deletions .github/workflows/create-release-candidate-branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,15 @@ jobs:
setupRcBranch:
name: Set up a Release Candidate Branch
runs-on: ubuntu-latest
permissions:
contents: write

steps:
- name: Sync code
uses: actions/checkout@v4
with:
ref: ${{ inputs.commitId }}
# Use RELEASE_CANDIDATE_BRANCH_CREATION_PAT to ensure workflow triggering works
token: ${{ secrets.RELEASE_CANDIDATE_BRANCH_CREATION_PAT }}
token: ${{ secrets.GITHUB_TOKEN }}
persist-credentials: true

- name: Setup Node.js
Expand Down Expand Up @@ -109,15 +110,8 @@ jobs:
env:
BRANCH_NAME: ${{ steps.release-branch.outputs.BRANCH_NAME }}
RELEASE_VERSION: ${{ steps.release-version.outputs.RELEASE_VERSION }}
# We use the toolkit-automation account, basically something that
# isn't the default GitHub Token, because you cannot chain actions with that.
# In our case, after pushing a commit (below), we want create-agent-standalone.yml
# to start automatically.
REPO_PAT: ${{ secrets.RELEASE_CANDIDATE_BRANCH_CREATION_PAT }}
run: |
git config --global user.email "<>"
git config --global user.name "aws-toolkit-automation"
# Configure git to use the PAT token for authentication
git remote set-url origin "https://x-access-token:${REPO_PAT}@github.com/${{ github.repository }}.git"
git commit -m "chore: bump agentic version: $RELEASE_VERSION"
git commit --no-verify -m "chore: bump agentic version: $RELEASE_VERSION"
git push --set-upstream origin "$BRANCH_NAME"
4 changes: 2 additions & 2 deletions .github/workflows/lsp-ci.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
name: Language Server CI
on:
push:
branches: [main, dev, feature/*]
branches: [main, dev, feature/*, release/agentic/*]
pull_request:
branches: [main, dev, feature/*]
branches: [main, dev, feature/*, release/agentic/*]

jobs:
test:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/npm-packaging.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
name: NPM Packaging
on:
push:
branches: [main, dev, feature/*]
branches: [main, dev, feature/*, release/agentic/*]
pull_request:
branches: [main, dev, feature/*]
branches: [main, dev, feature/*, release/agentic/*]

jobs:
build:
Expand Down
14 changes: 7 additions & 7 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"chat-client": "0.1.32",
"core/aws-lsp-core": "0.0.13",
"server/aws-lsp-antlr4": "0.1.17",
"server/aws-lsp-codewhisperer": "0.0.73",
"server/aws-lsp-json": "0.1.17",
"server/aws-lsp-partiql": "0.0.16",
"server/aws-lsp-yaml": "0.1.17"
"chat-client": "0.1.35",
"core/aws-lsp-core": "0.0.15",
"server/aws-lsp-antlr4": "0.1.19",
"server/aws-lsp-codewhisperer": "0.0.78",
"server/aws-lsp-json": "0.1.19",
"server/aws-lsp-partiql": "0.0.18",
"server/aws-lsp-yaml": "0.1.19"
}
2 changes: 1 addition & 1 deletion app/aws-lsp-antlr4-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"webpack": "webpack"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-antlr4": "*",
"antlr4-c3": "^3.4.1",
"antlr4ng": "^3.0.4"
Expand Down
2 changes: 1 addition & 1 deletion app/aws-lsp-buildspec-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"compile": "tsc --build"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-buildspec": "^0.0.1"
}
}
2 changes: 1 addition & 1 deletion app/aws-lsp-cloudformation-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"compile": "tsc --build"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-cloudformation": "^0.0.1"
}
}
2 changes: 1 addition & 1 deletion app/aws-lsp-codewhisperer-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
"local-build": "node scripts/local-build.js"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-codewhisperer": "*",
"copyfiles": "^2.4.1",
"cross-env": "^7.0.3",
Expand Down
10 changes: 5 additions & 5 deletions app/aws-lsp-codewhisperer-runtimes/scripts/download-node.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
# by src/scripts/copy-node-assets.ts, to produce the final bundle.

set -e
NODE_VERSION="18"
NODE_VERSION="24"
BASE_URL="https://nodejs.org/download/release/latest-v${NODE_VERSION}.x"
SHASUMS_FILE="SHASUMS256.txt"
ASSETS_DIR="build/node-assets"

# Download SHASUMS256.txt
wget -q "$BASE_URL/$SHASUMS_FILE" -O "$SHASUMS_FILE"
curl -s "$BASE_URL/$SHASUMS_FILE" -o "$SHASUMS_FILE"

# Extract exact Node.js version from any entry in SHASUMS256.txt
NODE_SEMVER=$(grep -o 'node-v[0-9]*\.[0-9]*\.[0-9]*' SHASUMS256.txt | head -1 | cut -d'v' -f2)
Expand Down Expand Up @@ -47,7 +47,7 @@ for actual_file in "${EXPECTED_FILES[@]}"; do

echo "Updating $actual_file"
mkdir -p "$(dirname "$filepath")"
wget -q "$BASE_URL/$actual_file" -O $filepath
curl -s "$BASE_URL/$actual_file" -o "$filepath"
else
echo "Warning: $actual_file not found in SHASUMS256.txt"
fi
Expand All @@ -58,7 +58,7 @@ LICENSE_URL="https://raw.githubusercontent.com/nodejs/node/v${NODE_SEMVER}/LICEN
LICENSE_FILE="$ASSETS_DIR/LICENSE"

echo "Fetching Node.js license from $LICENSE_URL"
wget -q "$LICENSE_URL" -O "$LICENSE_FILE"
curl -s "$LICENSE_URL" -o "$LICENSE_FILE"

# Verify the license file was downloaded successfully
if [ ! -s "$LICENSE_FILE" ]; then
Expand Down Expand Up @@ -94,4 +94,4 @@ jq --indent 4 \
echo "Successfully updated Node.js version and license in $ATTRIBUTION_FILE"

# Cleanup
rm -f "$SHASUMS_FILE"
rm -f "$SHASUMS_FILE"
12 changes: 12 additions & 0 deletions app/aws-lsp-codewhisperer-runtimes/scripts/package.sh
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,18 @@ TARGET_BUILD_DIR=./build/private/bundle/client
mkdir -p $TARGET_BUILD_DIR
cp -r $CHAT_CLIENT_BUNDLE_DIR/* $TARGET_BUILD_DIR

# Add benign files to avoid single-file archive flagging
echo "Amazon Q Developer UI Bundle - $(date)" > $TARGET_BUILD_DIR/README.txt
echo "This archive contains UI assets for Amazon Q Developer." >> $TARGET_BUILD_DIR/README.txt
cat > $TARGET_BUILD_DIR/client-metadata.json << EOF
{
"name": "amazonq-ui-bundle",
"description": "UI assets for Amazon Q Developer",
"main": "amazonq-ui.js",
"dateCreated": "$(date -u +%Y-%m-%dT%H:%M:%SZ)"
}
EOF

# ZIP client files
ARCHIVES_DIR=./build/archives
mkdir -p $ARCHIVES_DIR/shared
Expand Down
4 changes: 2 additions & 2 deletions app/aws-lsp-codewhisperer-runtimes/src/agent-standalone.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {
AmazonQServiceServerIAM,
AmazonQServiceServerToken,
CodeWhispererSecurityScanServerTokenProxy,
CodeWhispererServerTokenProxy,
CodeWhispererServer,
QAgenticChatServerProxy,
QConfigurationServerTokenProxy,
QLocalProjectContextServerProxy,
Expand All @@ -25,7 +25,7 @@ const version = versionJson.agenticChat
const props = {
version: version,
servers: [
CodeWhispererServerTokenProxy,
CodeWhispererServer,
CodeWhispererSecurityScanServerTokenProxy,
QConfigurationServerTokenProxy,
QNetTransformServerTokenProxy,
Expand Down
2 changes: 1 addition & 1 deletion app/aws-lsp-codewhisperer-runtimes/src/version.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"agenticChat": "1.27.0"
"agenticChat": "1.31.0"
}
2 changes: 1 addition & 1 deletion app/aws-lsp-identity-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"compile": "tsc --build"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-identity": "^0.0.1"
}
}
2 changes: 1 addition & 1 deletion app/aws-lsp-json-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"webpack": "webpack"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-json": "*"
},
"devDependencies": {
Expand Down
2 changes: 1 addition & 1 deletion app/aws-lsp-notification-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"compile": "tsc --build"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-notification": "^0.0.1"
}
}
2 changes: 1 addition & 1 deletion app/aws-lsp-partiql-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"package": "npm run compile && npm run compile:webpack"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.120",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-partiql": "^0.0.5"
},
"devDependencies": {
Expand Down
2 changes: 1 addition & 1 deletion app/aws-lsp-s3-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"compile": "tsc --build"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-s3": "^0.0.1"
}
}
2 changes: 1 addition & 1 deletion app/aws-lsp-yaml-json-webworker/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"serve:webpack": "NODE_ENV=development webpack serve"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-json": "*",
"@aws/lsp-yaml": "*"
},
Expand Down
2 changes: 1 addition & 1 deletion app/aws-lsp-yaml-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"webpack": "webpack"
},
"dependencies": {
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/lsp-yaml": "*"
},
"devDependencies": {
Expand Down
2 changes: 1 addition & 1 deletion app/hello-world-lsp-runtimes/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
},
"dependencies": {
"@aws/hello-world-lsp": "^0.0.1",
"@aws/language-server-runtimes": "^0.2.123"
"@aws/language-server-runtimes": "^0.2.128"
},
"devDependencies": {
"@types/chai": "^4.3.5",
Expand Down
7 changes: 7 additions & 0 deletions attribution/overrides.json

Large diffs are not rendered by default.

34 changes: 34 additions & 0 deletions chat-client/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,39 @@
# Changelog

## [0.1.35](https://github.com/aws/language-servers/compare/chat-client/v0.1.34...chat-client/v0.1.35) (2025-09-09)


### Features

* add support for getSupplementalContext LSP API ([#2212](https://github.com/aws/language-servers/issues/2212)) ([2ddcae7](https://github.com/aws/language-servers/commit/2ddcae7a4fac6b89cbc9784911959743ea0a6d11))
* **amazonq:** default to diff-based scans ([#2195](https://github.com/aws/language-servers/issues/2195)) ([da4c3db](https://github.com/aws/language-servers/commit/da4c3db5329bd50cfe249bf8c1d59afa9bcb0157))

## [0.1.34](https://github.com/aws/language-servers/compare/chat-client/v0.1.33...chat-client/v0.1.34) (2025-08-27)


### Features

* Auto fetch models from listAvailableModels API ([#2171](https://github.com/aws/language-servers/issues/2171)) ([8600c52](https://github.com/aws/language-servers/commit/8600c524877abb459e9338399352446c0dcff6f0))


### Bug Fixes

* **amazonq:** disable typewriter animation ([#2160](https://github.com/aws/language-servers/issues/2160)) ([db45d01](https://github.com/aws/language-servers/commit/db45d01adba10e8a04d868e1062f899df4f5b7e4))

## [0.1.33](https://github.com/aws/language-servers/compare/chat-client/v0.1.32...chat-client/v0.1.33) (2025-08-19)


### Features

* **amazonq:** added mcp admin level configuration with GetProfile ([#2000](https://github.com/aws/language-servers/issues/2000)) ([fd6e9a8](https://github.com/aws/language-servers/commit/fd6e9a829c6229c276de5340dffce52b426a864d))
* **amazonq:** read tool ui revamp ([#2113](https://github.com/aws/language-servers/issues/2113)) ([#2121](https://github.com/aws/language-servers/issues/2121)) ([93cf229](https://github.com/aws/language-servers/commit/93cf229149ba60491f9f5763793db4a9f570b611))


### Bug Fixes

* fix for button text and remove profilearn caching ([#2137](https://github.com/aws/language-servers/issues/2137)) ([2a4171a](https://github.com/aws/language-servers/commit/2a4171a74c15c23c23c481060496162bcc9e6284))
* Use file context override in the inline completion params for Jupyter Notebook ([#2114](https://github.com/aws/language-servers/issues/2114)) ([91c8398](https://github.com/aws/language-servers/commit/91c839857f8aa4d79098189f9fb620b361c51289))

## [0.1.32](https://github.com/aws/language-servers/compare/chat-client/v0.1.31...chat-client/v0.1.32) (2025-08-11)


Expand Down
6 changes: 3 additions & 3 deletions chat-client/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@aws/chat-client",
"version": "0.1.32",
"version": "0.1.35",
"description": "AWS Chat Client",
"main": "out/index.js",
"repository": {
Expand All @@ -25,9 +25,9 @@
},
"dependencies": {
"@aws/chat-client-ui-types": "^0.1.56",
"@aws/language-server-runtimes": "^0.2.123",
"@aws/language-server-runtimes": "^0.2.128",
"@aws/language-server-runtimes-types": "^0.1.50",
"@aws/mynah-ui": "^4.36.4"
"@aws/mynah-ui": "^4.36.5"
},
"devDependencies": {
"@types/jsdom": "^21.1.6",
Expand Down
15 changes: 0 additions & 15 deletions chat-client/src/client/chat.ts
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,6 @@ import { InboundChatApi, createMynahUi } from './mynahUi'
import { TabFactory } from './tabs/tabFactory'
import { ChatClientAdapter } from '../contracts/chatClientAdapter'
import { toMynahContextCommand, toMynahIcon } from './utils'
import { modelSelectionForRegion } from './texts/modelSelection'

const getDefaultTabConfig = (agenticMode?: boolean) => {
return {
Expand Down Expand Up @@ -264,20 +263,6 @@ export const createChat = (
return option
}),
})
} else if (message.params.region) {
// TODO: This can be removed after all clients support aws/chat/listAvailableModels
// get all tabs and update region
const allExistingTabs: MynahUITabStoreModel = mynahUi.getAllTabs()
for (const tabId in allExistingTabs) {
const options = mynahUi.getTabData(tabId).getStore()?.promptInputOptions
mynahUi.updateStore(tabId, {
promptInputOptions: options?.map(option =>
option.id === 'model-selection'
? modelSelectionForRegion[message.params.region]
: option
),
})
}
} else {
tabFactory.setInfoMessages((message.params as ChatOptionsUpdateParams).chatNotifications)
}
Expand Down
1 change: 1 addition & 0 deletions chat-client/src/client/mcpMynahUi.ts
Original file line number Diff line number Diff line change
Expand Up @@ -276,6 +276,7 @@ export class McpMynahUi {
params.header.actions?.map(action => ({
...action,
icon: action.icon ? toMynahIcon(action.icon) : undefined,
text: undefined,
})) || [],
}
: undefined,
Expand Down
4 changes: 3 additions & 1 deletion chat-client/src/client/mynahUi.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -260,7 +260,8 @@ describe('MynahUI', () => {
sinon.assert.calledThrice(updateStoreSpy)
})

it('should create a new tab if current tab is loading', () => {
it('should create a new tab if current tab is loading', function (done) {
this.timeout(8000)
// clear create tab stub since set up process calls it twice
createTabStub.resetHistory()
getAllTabsStub.returns({ 'tab-1': { store: { loadingChat: true } } })
Expand All @@ -274,6 +275,7 @@ describe('MynahUI', () => {

sinon.assert.calledOnceWithExactly(createTabStub, false)
sinon.assert.calledThrice(updateStoreSpy)
done()
})

it('should not create a new tab if one exists already', () => {
Expand Down
Loading
Loading