mirror of
https://github.com/penpot/penpot.git
synced 2026-05-15 13:04:25 +00:00
Serena provides useful tools for the agentic workflow for penpot. The following additional extensions are added: 1. uv and Serena installation, including a suitable serena_config.yml, are added to the devenv docker image 2. Serena configuration options are set via env vars and flags in manage.sh 3. run-devenv can now take -e flags which it forwards to docker exec GitHub #9315
63 lines
1.8 KiB
Bash
Executable File
63 lines
1.8 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
sudo chown penpot:users /home/penpot
|
|
|
|
cd ~;
|
|
|
|
source ~/.bashrc
|
|
|
|
echo "[start-tmux.sh] Installing node dependencies"
|
|
pushd ~/penpot/frontend/
|
|
./scripts/setup;
|
|
popd
|
|
pushd ~/penpot/exporter/
|
|
./scripts/setup;
|
|
popd
|
|
|
|
tmux -2 new-session -d -s penpot
|
|
|
|
tmux rename-window -t penpot:0 'frontend watch'
|
|
tmux select-window -t penpot:0
|
|
tmux send-keys -t penpot 'cd penpot/frontend' enter C-l
|
|
tmux send-keys -t penpot './scripts/watch app' enter
|
|
|
|
tmux new-window -t penpot:1 -n 'frontend storybook'
|
|
tmux select-window -t penpot:1
|
|
tmux send-keys -t penpot 'cd penpot/frontend' enter C-l
|
|
tmux send-keys -t penpot './scripts/watch storybook' enter
|
|
|
|
tmux new-window -t penpot:2 -n 'exporter'
|
|
tmux select-window -t penpot:2
|
|
tmux send-keys -t penpot 'cd penpot/exporter' enter C-l
|
|
tmux send-keys -t penpot 'rm -f target/app.js*' enter C-l
|
|
tmux send-keys -t penpot './scripts/watch' enter
|
|
|
|
tmux split-window -v
|
|
tmux send-keys -t penpot 'cd penpot/exporter' enter C-l
|
|
tmux send-keys -t penpot './scripts/wait-and-start.sh' enter
|
|
|
|
tmux new-window -t penpot:3 -n 'backend'
|
|
tmux select-window -t penpot:3
|
|
tmux send-keys -t penpot 'cd penpot/backend' enter C-l
|
|
tmux send-keys -t penpot './scripts/start-dev' enter
|
|
|
|
if echo "$PENPOT_FLAGS" | grep -q "enable-mcp"; then
|
|
pushd ~/penpot/mcp/
|
|
./scripts/setup;
|
|
pnpm run build;
|
|
popd
|
|
|
|
tmux new-window -t penpot:4 -n 'mcp'
|
|
tmux select-window -t penpot:4
|
|
tmux send-keys -t penpot 'cd penpot/mcp' enter C-l
|
|
tmux send-keys -t penpot './scripts/start-mcp-devenv' enter
|
|
fi
|
|
|
|
if [ "${SERENA_ENABLED:-false}" = "true" ]; then
|
|
tmux new-window -t penpot:5 -n 'serena'
|
|
tmux select-window -t penpot:5
|
|
tmux send-keys -t penpot "serena start-mcp-server --transport streamable-http --port 14281 --project penpot --context ${SERENA_CONTEXT} --host 0.0.0.0" enter
|
|
fi
|
|
|
|
tmux -2 attach-session -t penpot
|