Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
8d93476
Auto-merge main back to develop post release
estohlmann Feb 6, 2026
7838909
Add Claude Code support and vLLM "Tool Calling" support for LISA serv…
Ernest-Gray Feb 9, 2026
8bbd0c0
Make exceptions consistent
bedanley Feb 10, 2026
eae02f8
Fix/remove borders from Tables to sync with design (#731)
Ernest-Gray Feb 10, 2026
61fbcf0
Added a MCP Server identifier to the tool approval modal. (#733)
Ernest-Gray Feb 10, 2026
61f27a3
Added documentation about the vLLM variables LISA supports. (#737)
Ernest-Gray Feb 11, 2026
7ef14f5
Updated overall apperance of the MCP tool execution modal (#738)
Ernest-Gray Feb 11, 2026
45458cf
session config model mapping
estohlmann Feb 11, 2026
ca0b28e
Remove fastapi import from auth
bedanley Feb 12, 2026
df7906e
updating get user sessions to get all pages from ddb
estohlmann Feb 12, 2026
ab3c31c
Merge branch 'develop' of github.com:awslabs/LISA into develop
estohlmann Feb 12, 2026
f0dd7ec
Bump cdk
bedanley Feb 12, 2026
b447a97
Update package lock
bedanley Feb 12, 2026
a3f042e
preview panel for rendering prompt (#747)
jmharold Feb 12, 2026
795b857
Publish artifacts
bedanley Feb 12, 2026
24e2f49
Updated deployment guide
Ernest-Gray Feb 12, 2026
8b4da4a
Updating version for release v6.2.1
estohlmann Feb 12, 2026
088ca15
Merge branch 'main' into release/v6.2.1
estohlmann Feb 12, 2026
064a3ed
add refresh button back
Feb 12, 2026
31fa455
Fix session float encoding
bedanley Feb 12, 2026
9cd6203
Changelog updates
estohlmann Feb 12, 2026
ca7d9f1
Reduce embedding batches
bedanley Feb 13, 2026
a6dcf3f
pre
bedanley Feb 13, 2026
bb63a27
fix tests
bedanley Feb 13, 2026
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
79 changes: 68 additions & 11 deletions .github/workflows/code.publish.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,19 @@
name: Publish LISA NPM Package
name: Publish LISA Packages
on:
release:
types: [released]
workflow_dispatch:
inputs:
test_mode:
description: 'Test mode (skips npm publish and release upload)'
required: false
type: boolean
default: true
version:
description: 'Version tag for testing'
required: false
type: string
default: 'test-v0.0.0'

permissions:
contents: read # Default read-only
Expand All @@ -10,19 +22,64 @@ jobs:
PublishLISA:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write # Required for npm package publishing
contents: write # Required for uploading release assets
id-token: write # Required for npm trusted publishing (OIDC)
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v4
# Setup .npmrc file to publish to GitHub Packages
# Setup .npmrc file to publish to NpmJs Packages
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v4
with:
node-version: '24.x'
registry-url: 'https://npm.pkg.github.com'
registry-url: 'https://registry.npmjs.org'

# Setup Python for build scripts
- uses: actions/setup-python@v5
with:
python-version: '3.13'

# Install npm dependencies and publish package. Auth is established with NpmJs Trusted publishing.
# To update, modify package at https://www.npmjs.com/package/awslabs-lisa/access
# More info: https://docs.npmjs.com/trusted-publishers
- run: npm ci
- run: npm publish
- name: Publish NPM Package
if: github.event_name == 'release' || !inputs.test_mode
run: npm publish
- name: Publish NPM Package (Dry Run)
if: github.event_name == 'workflow_dispatch' && inputs.test_mode
run: npm publish --dry-run

# Build binary assets (lambda layers and container images)
- name: Build Lambda Layers and Container Images
run: |
# Create build directory for lambda layers
mkdir -p build

# Build assets (runs build-lambdas and build-images --export)
./bin/build-assets
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PYPI_URL: https://pypi.org/simple
LISA_VERSION: ${{ github.event_name == 'release' && github.event.release.tag_name || inputs.version }}

# Upload binary assets to GitHub Release
- name: Upload Release Assets
if: github.event_name == 'release' || !inputs.test_mode
uses: softprops/action-gh-release@v2
with:
files: |
dist/layers/*.zip
dist/images/*.tar
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

# In test mode, just list what would be uploaded
- name: List Build Artifacts (Test Mode)
if: github.event_name == 'workflow_dispatch' && inputs.test_mode
run: |
echo "=== Lambda Layers (dist/layers/*.zip) ==="
ls -lh dist/layers/*.zip 2>/dev/null || echo "No zip files found"
echo ""
echo "=== Container Images (dist/images/*.tar) ==="
ls -lh dist/images/*.tar 2>/dev/null || echo "No tar files found"

SendSlackNotification:
name: Send Slack Notification
Expand All @@ -37,9 +94,9 @@ jobs:
env:
SLACK_WEBHOOK: ${{ secrets.INTERNAL_DEV_SLACK_WEBHOOK_URL }}
SLACK_COLOR: ${{ contains(join(needs.*.result, ' '), 'failure') && 'failure' || 'success' }}
SLACK_TITLE: 'NPM Package Published'
SLACK_TITLE: 'LISA Package Published'
SLACK_FOOTER: ''
MSG_MINIMAL: 'actions url,commit'
SLACK_MESSAGE_ON_FAILURE: '<!here> NPM Package publish FAILED for version ${{ github.event.pull_request.head.ref }}|commit>'
SLACK_MESSAGE_ON_SUCCESS: 'NPM Package published SUCCESS for ${{ github.event.pull_request.head.ref }}|commit>.'
SLACK_MESSAGE: 'NPM Publish Finished with status ${{ job.status }} for <${{ github.event.pull_request.head.ref }}|commit>'
SLACK_MESSAGE_ON_FAILURE: '<!here> LISA Package publish FAILED for version ${{ github.event.release.tag_name }}'
SLACK_MESSAGE_ON_SUCCESS: 'LISA Package published SUCCESS for version ${{ github.event.release.tag_name }} with NPM package and binary assets.'
SLACK_MESSAGE: 'LISA Publish Finished with status ${{ job.status }} for version ${{ github.event.release.tag_name }}'
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -58,3 +58,4 @@ config-generated.yaml

# Cypress local environment
/cypress/.env.local
.npmrc
1 change: 1 addition & 0 deletions .npmignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ lib/**/dist/
lib/**/build/
!/dist/
!/dist/**/node_modules
/dist/images

# Non-source files
.eslintrc.json
Expand Down
27 changes: 26 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,28 @@
# v6.2.1

## Bug Fixes
- Removed FastAPI import from auth handler preventing lambdas without FastAPI in the layer dependencies from working
- Updated Session model to account for session configuration data types to allow resuming old stored sessions
- Made exception handling more uniform and consistent across the application

## UI Updates
- Cleaned up the MCP approval modal
- Removed borders around all tables for a consistent theme across the UI
- Added markdown preview toggle to prompt input
- Moved delete all sessions button under user profile and added back the refresh button to session panel

## Documentation Updates
- Cleared up the vLLM variables LISA supports
- Updated deployment guide to account for new cognito updates

## Acknowledgements
* @bedanley
* @Ernest-Gray
* @estohlmann
* @jmharold

**Full Changelog**: https://github.com/awslabs/LISA/compare/v6.2.0..v6.2.1

# v6.2.0

## Key Features
Expand All @@ -20,7 +45,7 @@ LISA supports video generation.
### Interactive Configuration Generator CLI
LISA offers an interactive CLI tool that guides customers through creating a valid `config-custom.yaml` file for deployment. Instead of manually editing YAML and referencing `example_config.yaml`, customers can now run:

> @awslabs/lisa@6.2.0 generate-config
> awslabs-lisa@6.2.0 generate-config
> tsx scripts/generate-config.ts

╔════════════════════════════════════════════════════════════════╗
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
6.2.0
6.2.1
26 changes: 25 additions & 1 deletion bin/build-assets
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,30 @@
set -e

ROOT=$(pwd)
LAYER_DIR=$ROOT/dist/layers
IMAGE_DIR=$ROOT/dist/images

./bin/build-lambdas
# Default PYPI_URL if not set
export PYPI_URL=${PYPI_URL:-"https://pypi.org/simple"}
export OUTPUT_DIR=$LAYER_DIR
export IMAGE_DIR

echo "Building all assets..."

# Build Lambda layers (Python and Node.js)
echo "Building Lambda Layers..."
./bin/build-lambda-layers

# Build Lambda function (no dependencies, uses layers)
echo "Building Lambda function..."
cd lambda
$ROOT/bin/package-lambda --src . --output "Lambda.zip" --pypi "$PYPI_URL"
mv ./build/Lambda.zip "$LAYER_DIR/"
rm -rf ./build
cd "$ROOT"

# Build and export container images
echo "Building Image exports..."
./bin/build-images --export

echo "All assets built successfully!"
2 changes: 1 addition & 1 deletion bin/build-images
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
set -e

ROOT=$(pwd)
OUTPUT_DIR=$ROOT/dist/images
OUTPUT_DIR=${IMAGE_DIR:-$ROOT/dist/images}

# Container runtime: Use CDK_DOCKER env var (same as CDK), default to docker
DOCKER_CMD="${CDK_DOCKER:-docker}"
Expand Down
65 changes: 65 additions & 0 deletions bin/build-lambda-layers
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
#!/bin/bash
set -e

ROOT=$(pwd)
OUTPUT_DIR=${OUTPUT_DIR:-$ROOT/dist/layers}
mkdir -p $OUTPUT_DIR

# Default PYPI_URL if not set
PYPI_URL=${PYPI_URL:-"https://pypi.org/simple"}

# Define associative array for package name and source mapping
declare -A LAMBDA_LAYERS
LAMBDA_LAYERS["CommonLayer"]="./lib/core/layers/common"
LAMBDA_LAYERS["AuthLayer"]="./lib/core/layers/authorizer"
LAMBDA_LAYERS["FastApiLayer"]="./lib/core/layers/fastapi"
LAMBDA_LAYERS["Rag"]="./lib/rag/layer"
LAMBDA_LAYERS["Sdk"]="./lisa-sdk"

echo "Building Python Lambda Layers..."
for package_name in "${!LAMBDA_LAYERS[@]}"; do
source_path=${LAMBDA_LAYERS[$package_name]}
echo "Building Lambda Layer $package_name from $source_path..."

# Use package-lambda utility with --layer flag (output is relative to source)
cd "$source_path"
$ROOT/bin/package-lambda --src . --output "$package_name.zip" --pypi "$PYPI_URL" --layer
# Move the built zip to the output directory
mv "./build/$package_name.zip" "$OUTPUT_DIR/"
rm -rf ./build
cd "$ROOT"
done

# Build Node.js CDK Layer
build_node_layer() {
local package_name=$1
local source_path=$2
echo "Building Node.js Lambda Layer $package_name from $source_path..."

cd "$source_path"

# Clean previous build
rm -rf build node_modules

# Create layer structure: nodejs/node_modules
mkdir -p build/nodejs

# Copy package.json and install production dependencies
cp package.json build/nodejs/
cd build/nodejs
npm install --omit=dev --production
cd ../..

# Create zip
cd build
zip -r "$package_name.zip" nodejs
mv "$package_name.zip" $OUTPUT_DIR/
cd ..
rm -rf build
cd $ROOT
}

echo "Building Node.js Lambda Layers..."
build_node_layer "CdkLayer" "./lib/core/layers/cdk"

echo "All Lambda layers built successfully in $OUTPUT_DIR!"
File renamed without changes.
Loading
Loading