Skip to content
Open
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
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .devcontainer/mcp-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"agent-memory": {
"command": "uv",
"args": ["run", "agent-memory", "mcp"],
"cwd": "/workspace",
"cwd": "/workspace/V0",
"env": {
"REDIS_URL": "redis://redis:6379",
"DISABLE_AUTH": "true",
Expand Down
10 changes: 5 additions & 5 deletions .devcontainer/post-create.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ echo ""

# Install Python dependencies for the memory server
echo -e "${YELLOW}Installing Memory Server dependencies...${NC}"
cd /workspace
cd /workspace/V0
uv sync --all-extras

# Install Workbench UI dependencies if the project exists
if [ -d "/workspace/workbench" ] && [ -f "/workspace/workbench/package.json" ]; then
if [ -d "/workspace/V0/workbench" ] && [ -f "/workspace/V0/workbench/package.json" ]; then
echo -e "${YELLOW}Installing Workbench UI dependencies...${NC}"
cd /workspace/workbench
cd /workspace/V0/workbench
npm install || {
echo -e "${YELLOW}Warning: npm install had issues. You may need to run 'npm install' manually.${NC}"
}
Expand All @@ -45,8 +45,8 @@ echo -e " 3. To use Claude with memory tools:"
echo -e " ${BLUE}claude --mcp-config /workspace/.devcontainer/mcp-config.json${NC}"
echo ""
echo -e " 4. Run examples:"
echo -e " ${BLUE}cd /workspace && uv run python examples/travel_agent.py${NC}"
echo -e " ${BLUE}cd /workspace/V0 && uv run python examples/travel_agent.py${NC}"
echo ""
echo -e " 5. Run tests:"
echo -e " ${BLUE}cd /workspace && uv run pytest${NC}"
echo -e " ${BLUE}cd /workspace/V0 && uv run pytest${NC}"
echo ""
28 changes: 14 additions & 14 deletions .devcontainer/start-services.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,18 +20,18 @@ echo ""
mkdir -p /tmp/ams-logs

# Load environment variables from workbench .env if it exists
if [ -f "/workspace/workbench/.env" ]; then
echo -e "${YELLOW}Loading environment from /workspace/workbench/.env...${NC}"
if [ -f "/workspace/V0/workbench/.env" ]; then
echo -e "${YELLOW}Loading environment from /workspace/V0/workbench/.env...${NC}"
set -a # automatically export all variables
source /workspace/workbench/.env
source /workspace/V0/workbench/.env
set +a
fi

# Also check for root .env file
if [ -f "/workspace/.env" ]; then
echo -e "${YELLOW}Loading environment from /workspace/.env...${NC}"
# Also check for the V0 project .env file
if [ -f "/workspace/V0/.env" ]; then
echo -e "${YELLOW}Loading environment from /workspace/V0/.env...${NC}"
set -a
source /workspace/.env
source /workspace/V0/.env
set +a
fi

Expand All @@ -48,12 +48,12 @@ echo -e "${GREEN}Redis is ready!${NC}"

# Start Memory Server
echo -e "${YELLOW}Starting Memory Server...${NC}"
cd /workspace
cd /workspace/V0
if [ -f "pyproject.toml" ]; then
nohup uv run agent-memory api --host 0.0.0.0 --port 8000 --task-backend=asyncio > /tmp/ams-logs/memory-server.log 2>&1 &
echo $! > /tmp/ams-logs/memory-server.pid
else
echo -e "${RED}Error: pyproject.toml not found in /workspace${NC}"
echo -e "${RED}Error: pyproject.toml not found in /workspace/V0${NC}"
exit 1
fi

Expand All @@ -74,17 +74,17 @@ echo -e "${GREEN}Memory Server is ready!${NC}"

# Start MCP Server (SSE mode for workbench browser client)
echo -e "${YELLOW}Starting MCP Server (SSE mode on port 9000)...${NC}"
cd /workspace
cd /workspace/V0
nohup uv run agent-memory mcp --mode sse --port 9000 --task-backend=asyncio > /tmp/ams-logs/mcp-server.log 2>&1 &
echo $! > /tmp/ams-logs/mcp-server.pid
# Give MCP server a moment to bind
sleep 3
echo -e "${GREEN}MCP Server started!${NC}"

# Start Workbench UI if it exists
if [ -d "/workspace/workbench" ] && [ -f "/workspace/workbench/package.json" ]; then
if [ -d "/workspace/V0/workbench" ] && [ -f "/workspace/V0/workbench/package.json" ]; then
echo -e "${YELLOW}Starting Workbench UI...${NC}"
cd /workspace/workbench
cd /workspace/V0/workbench

# Install dependencies if node_modules doesn't exist
if [ ! -d "node_modules" ]; then
Expand All @@ -105,7 +105,7 @@ if [ -d "/workspace/workbench" ] && [ -f "/workspace/workbench/package.json" ];
attempt=$((attempt + 1))
if [ $attempt -ge $max_attempts ]; then
echo -e "${RED}Workbench UI failed to start. Check logs at /tmp/ams-logs/workbench-ui.log${NC}"
echo -e "${YELLOW}You can start it manually: cd /workspace/workbench && npm run dev${NC}"
echo -e "${YELLOW}You can start it manually: cd /workspace/V0/workbench && npm run dev${NC}"
break
fi
sleep 1
Expand All @@ -116,7 +116,7 @@ if [ -d "/workspace/workbench" ] && [ -f "/workspace/workbench/package.json" ];
fi
else
echo -e "${YELLOW}Workbench UI not found. Skipping...${NC}"
echo -e "${YELLOW}To set up the workbench, run: cd /workspace/workbench && npm install${NC}"
echo -e "${YELLOW}To set up the workbench, run: cd /workspace/V0/workbench && npm install${NC}"
fi

echo ""
Expand Down
35 changes: 18 additions & 17 deletions .github/workflows/agent-memory-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,11 @@ jobs:
uses: gradle/actions/setup-gradle@v3

- name: Run tests
working-directory: agent-memory-client/agent-memory-client-java
working-directory: V0/agent-memory-client/agent-memory-client-java
run: ./gradlew test

- name: Build
working-directory: agent-memory-client/agent-memory-client-java
working-directory: V0/agent-memory-client/agent-memory-client-java
run: ./gradlew build

test-js:
Expand All @@ -54,15 +54,15 @@ jobs:
node-version: ${{ matrix.node-version }}

- name: Install dependencies
working-directory: agent-memory-client/agent-memory-client-js
working-directory: V0/agent-memory-client/agent-memory-client-js
run: npm ci

- name: Run tests with coverage
working-directory: agent-memory-client/agent-memory-client-js
working-directory: V0/agent-memory-client/agent-memory-client-js
run: npm run test:coverage -- --run

- name: Build
working-directory: agent-memory-client/agent-memory-client-js
working-directory: V0/agent-memory-client/agent-memory-client-js
run: npm run build

test:
Expand All @@ -84,15 +84,16 @@ jobs:
uses: astral-sh/setup-uv@v3

- name: Install dependencies
working-directory: agent-memory-client
working-directory: V0/agent-memory-client
run: uv sync --extra dev

- name: Run pre-commit
working-directory: V0
run: |
uv run pre-commit run --all-files

- name: Run tests
working-directory: agent-memory-client
working-directory: V0/agent-memory-client
run: uv run pytest tests/ --cov=agent_memory_client --cov-report=xml

publish-testpypi:
Expand All @@ -118,14 +119,14 @@ jobs:
pip install build

- name: Build package
working-directory: agent-memory-client
working-directory: V0/agent-memory-client
run: python -m build

- name: Publish package to TestPyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
repository-url: https://test.pypi.org/legacy/
packages-dir: agent-memory-client/dist/
packages-dir: V0/agent-memory-client/dist/

publish-pypi:
name: Publish to PyPI
Expand All @@ -150,13 +151,13 @@ jobs:
pip install build

- name: Build package
working-directory: agent-memory-client
working-directory: V0/agent-memory-client
run: python -m build

- name: Publish package to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
packages-dir: agent-memory-client/dist/
packages-dir: V0/agent-memory-client/dist/

publish-npm:
name: Publish to npm
Expand All @@ -176,15 +177,15 @@ jobs:
registry-url: 'https://registry.npmjs.org'

- name: Install dependencies
working-directory: agent-memory-client/agent-memory-client-js
working-directory: V0/agent-memory-client/agent-memory-client-js
run: npm ci

- name: Build
working-directory: agent-memory-client/agent-memory-client-js
working-directory: V0/agent-memory-client/agent-memory-client-js
run: npm run build

- name: Publish to npm
working-directory: agent-memory-client/agent-memory-client-js
working-directory: V0/agent-memory-client/agent-memory-client-js
run: npm publish --provenance --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
Expand All @@ -211,7 +212,7 @@ jobs:
run: echo "VERSION=${GITHUB_REF#refs/tags/client-java/v}" >> $GITHUB_OUTPUT

- name: Build and publish
working-directory: agent-memory-client/agent-memory-client-java
working-directory: V0/agent-memory-client/agent-memory-client-java
run: ./gradlew publish -Pversion=${{ steps.version.outputs.VERSION }}
env:
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.GPG_SIGNING_KEY }}
Expand Down Expand Up @@ -247,12 +248,12 @@ jobs:
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# repository-url: https://test.pypi.org/legacy/
# packages-dir: agent-memory-client/dist/
# packages-dir: V0/agent-memory-client/dist/
# password: ${{ secrets.TEST_PYPI_API_TOKEN }}
#
# For PyPI job, replace the publish step with:
# - name: Publish package to PyPI
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# packages-dir: agent-memory-client/dist/
# packages-dir: V0/agent-memory-client/dist/
# password: ${{ secrets.PYPI_API_TOKEN }}
21 changes: 12 additions & 9 deletions .github/workflows/agent-memory-server.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ jobs:
build:
name: Build package
runs-on: ubuntu-latest
defaults:
run:
working-directory: V0
steps:
- uses: actions/checkout@v4

Expand All @@ -43,7 +46,7 @@ jobs:
uses: actions/upload-artifact@v4
with:
name: dist
path: dist/*
path: V0/dist/*

publish-testpypi:
name: Publish to TestPyPI
Expand Down Expand Up @@ -130,8 +133,8 @@ jobs:
- name: Build and push Docker image (standard)
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile
context: ./V0
file: ./V0/Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: |
Expand All @@ -145,8 +148,8 @@ jobs:
- name: Build and push Docker image (standalone)
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile.standalone
context: ./V0
file: ./V0/Dockerfile.standalone
platforms: linux/amd64,linux/arm64
push: true
tags: |
Expand Down Expand Up @@ -233,8 +236,8 @@ jobs:
- name: Build and push Docker image (standard)
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile
context: ./V0
file: ./V0/Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: |
Expand All @@ -248,8 +251,8 @@ jobs:
- name: Build and push Docker image (standalone)
uses: docker/build-push-action@v5
with:
context: .
file: ./Dockerfile.standalone
context: ./V0
file: ./V0/Dockerfile.standalone
platforms: linux/amd64,linux/arm64
push: true
tags: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/claude.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,4 +36,4 @@ jobs:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

# Define which tools Claude can use
allowed_tools: "Bash,Bash(python:*),Bash(ruff:*),Bash(uv:*),Bash(pip:*),Bash(pytest:*),Bash(git status),Bash(git log),Bash(git show),Bash(git blame),Bash(git reflog),Bash(git stash list),Bash(git ls-files),Bash(git branch),Bash(git tag),Bash(git diff),Bash(make:*),Bash(pytest:*),Bash(cd:*),Bash(ls:*),Bash(make),Bash(make:*),View,GlobTool,GrepTool,BatchTool,Bash(cd /home/runner/work/agent-memory-server/agent-memory-server && ruff check),Bash(cd /home/runner/work/agent-memory-server/agent-memory-server && pytest*)"
allowed_tools: "Bash,Bash(python:*),Bash(ruff:*),Bash(uv:*),Bash(pip:*),Bash(pytest:*),Bash(git status),Bash(git log),Bash(git show),Bash(git blame),Bash(git reflog),Bash(git stash list),Bash(git ls-files),Bash(git branch),Bash(git tag),Bash(git diff),Bash(make:*),Bash(pytest:*),Bash(cd:*),Bash(ls:*),Bash(make),Bash(make:*),View,GlobTool,GrepTool,BatchTool,Bash(cd /home/runner/work/agent-memory-server/agent-memory-server/V0 && ruff check),Bash(cd /home/runner/work/agent-memory-server/agent-memory-server/V0 && pytest*)"
17 changes: 10 additions & 7 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,16 @@ on:
push:
branches: [main]
paths:
- 'docs/**'
- 'mkdocs.yml'
- 'index.md'
- 'V0/docs/**'
- 'V0/mkdocs.yml'
- 'V0/index.md'
- '.github/workflows/docs.yml'
pull_request:
branches: [main]
paths:
- 'docs/**'
- 'mkdocs.yml'
- 'index.md'
- 'V0/docs/**'
- 'V0/mkdocs.yml'
- 'V0/index.md'

permissions:
contents: read
Expand All @@ -27,6 +27,9 @@ concurrency:
jobs:
build:
runs-on: ubuntu-latest
defaults:
run:
working-directory: V0
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -63,7 +66,7 @@ jobs:
if: github.ref == 'refs/heads/main'
uses: actions/upload-pages-artifact@v3
with:
path: ./site
path: V0/site

deploy:
if: github.ref == 'refs/heads/main'
Expand Down
9 changes: 9 additions & 0 deletions .github/workflows/python-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ on:
jobs:
lint:
runs-on: ubuntu-latest
defaults:
run:
working-directory: V0
steps:
- uses: actions/checkout@v3

Expand All @@ -36,6 +39,9 @@ jobs:
needs: lint
if: github.event_name != 'pull_request' || (github.event.pull_request.head.repo.full_name == github.repository && github.actor != 'dependabot[bot]')
runs-on: ubuntu-latest
defaults:
run:
working-directory: V0
steps:
- uses: actions/checkout@v4

Expand Down Expand Up @@ -68,6 +74,9 @@ jobs:
test:
needs: lint
runs-on: ubuntu-latest
defaults:
run:
working-directory: V0
strategy:
fail-fast: false
matrix:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-java-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
jreleaser-arguments: 'assemble --git-root-search'
clone-to-dist-repo: false
update-antora-version: false
working-directory: 'agent-memory-client/agent-memory-client-java'
working-directory: 'V0/agent-memory-client/agent-memory-client-java'
tag-prefix: 'java-client-v'
git-root-search: true
secrets:
Expand Down
Loading
Loading