From 3f173138f718e7888707c57ff6e5a53481670fe9 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Fri, 24 Jan 2025 13:45:45 -0500 Subject: [PATCH 01/18] groq --- characters/eliza.character.json | 2 +- rundocker.sh | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/characters/eliza.character.json b/characters/eliza.character.json index 54b7ddd57f9..c9ea1892a3c 100644 --- a/characters/eliza.character.json +++ b/characters/eliza.character.json @@ -2,7 +2,7 @@ "name": "TINE-IntrospectorIsNotEliza", "plugins": [ "@elizaos/plugin-akash" ], "clients": [], - "modelProvider": "openai", + "modelProvider": "groq", "settings": { "secrets": {}, "voice": { diff --git a/rundocker.sh b/rundocker.sh index 82f006f2438..e3568891693 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -15,6 +15,8 @@ apt install -y lsof strace nmap #apt install -y emacs-nox # FIXME another account hardcoded aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 767503528736.dkr.ecr.us-east-2.amazonaws.com + + adduser --disabled-password --gecos "" agent --home "/home/agent" || echo ignore git config --global --add safe.directory "/opt/agent" cd "/opt/agent/" || exit 1 # "we need agent" @@ -44,6 +46,11 @@ OPENAI_API_URL=$(aws ssm get-parameter --name "tine_agent_openai_endpoint" | export OPENAI_API_URL echo "OPENAI_API_URL=${OPENAI_API_URL}" >> "/var/run/agent/secrets/env" +GROQ_API_KEY=$(aws ssm get-parameter --name "tine_agent_groq_key" | jq .Parameter.Value -r ) +export GROQ_API_KEY +echo "GROQ_API_KEY=${GROQ_KEY}" >> "/var/run/agent/secrets/env" + + set -x ## TURN ON LOGGING @@ -58,6 +65,8 @@ grep . -h -n /etc/systemd/system/agent-docker.service chown -R agent:agent /var/run/agent/ chown -R agent:agent /opt/agent/ systemctl daemon-reload +#docker stop agent-docker.service || echo oops +#docker rm agent-docker.service || echo oops systemctl start agent-docker || echo failed systemctl enable agent-docker || echo failed systemctl status agent-docker || echo oops2 From 9e73bd485f5dcaef4a9e212bff5be0f8fe703dda Mon Sep 17 00:00:00 2001 From: mike dupont Date: Fri, 24 Jan 2025 14:07:16 -0500 Subject: [PATCH 02/18] bugfix rundocker typo in name --- demo.md | 3 +++ rundocker.sh | 3 +-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/demo.md b/demo.md index 919bad38381..e49aa591ff0 100644 --- a/demo.md +++ b/demo.md @@ -84,8 +84,11 @@ aws ssm put-parameter --name "agent_openai_key" --value "${OPENAI_API_KEY}" aws ssm put-parameter --name "tine_agent_openai_key" --value "${OPENAI_API_KEY}" --type String aws ssm put-parameter --name "tine_agent_openai_endpoint" --value "${OPENAI_API_BASE}" --type String aws ssm put-parameter --name "tine_agent_openai_model" --value "${LLMMODEL}" --type String + +aws ssm put-parameter --name "tine_agent_groq_key" --value "${GROQ_API_KEY}" --type String ``` + Make sure you dont put chat/completions in the url to overwrite : `aws ssm put-parameter --name "tine_agent_openai_endpoint" --value "${OPENAI_API_BASE}" --type String --overwrite` diff --git a/rundocker.sh b/rundocker.sh index e3568891693..645017782bc 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -48,8 +48,7 @@ echo "OPENAI_API_URL=${OPENAI_API_URL}" >> "/var/run/agent/secrets/env" GROQ_API_KEY=$(aws ssm get-parameter --name "tine_agent_groq_key" | jq .Parameter.Value -r ) export GROQ_API_KEY -echo "GROQ_API_KEY=${GROQ_KEY}" >> "/var/run/agent/secrets/env" - +echo "GROQ_API_KEY=${GROQ_API_KEY}" >> "/var/run/agent/secrets/env" set -x ## TURN ON LOGGING From f524a7dd701bd6736af0f537e1d5f14408530b15 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Fri, 24 Jan 2025 14:22:05 -0500 Subject: [PATCH 03/18] remove things causing us to wait --- demo.md | 3 +++ rundocker.sh | 32 ++++++++++++++++---------------- 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/demo.md b/demo.md index e49aa591ff0..4e73359054c 100644 --- a/demo.md +++ b/demo.md @@ -88,6 +88,9 @@ aws ssm put-parameter --name "tine_agent_openai_model" --value "${LLMMODEL} aws ssm put-parameter --name "tine_agent_groq_key" --value "${GROQ_API_KEY}" --type String ``` +Check key without exposing. +grep GROQ /var/run/agent/secrets/env | cut -b1-14 + Make sure you dont put chat/completions in the url to overwrite : diff --git a/rundocker.sh b/rundocker.sh index 645017782bc..0a37a762a76 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -20,7 +20,7 @@ aws ecr get-login-password --region us-east-2 | docker login --username AWS --pa adduser --disabled-password --gecos "" agent --home "/home/agent" || echo ignore git config --global --add safe.directory "/opt/agent" cd "/opt/agent/" || exit 1 # "we need agent" -git log -1 +#git log -1 mkdir -p "/home/agent" mkdir -p "/var/agent/logs" chown -R agent:agent "/var/agent/" "/home/agent" "/opt/agent" @@ -29,22 +29,22 @@ mkdir -p "/var/run/agent/secrets/" # we are using parameters prefixed by tine_ for multiple ## TURN OFF LOGGING set +x -OPENAI_KEY=$(aws ssm get-parameter --name "tine_agent_openai_key" | jq .Parameter.Value -r ) -export OPENAI_KEY -echo "OPENAI_KEY=${OPENAI_KEY}" > "/var/run/agent/secrets/env" -echo "OPENAI_API_KEY=${OPENAI_KEY}" >> "/var/run/agent/secrets/env" +# OPENAI_KEY=$(aws ssm get-parameter --name "tine_agent_openai_key" | jq .Parameter.Value -r ) +# export OPENAI_KEY +# echo "OPENAI_KEY=${OPENAI_KEY}" > "/var/run/agent/secrets/env" +# echo "OPENAI_API_KEY=${OPENAI_KEY}" >> "/var/run/agent/secrets/env" -# now the model name -XAI_MODEL=$(aws ssm get-parameter --name "tine_agent_openai_model" | jq .Parameter.Value -r ) -export XAI_MODEL -echo "XAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" -echo "SMALL_OPENAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" -echo "MEDIUM_OPENAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" -echo "LARGE_OPENAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" +# # now the model name +# XAI_MODEL=$(aws ssm get-parameter --name "tine_agent_openai_model" | jq .Parameter.Value -r ) +# export XAI_MODEL +# echo "XAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" +# echo "SMALL_OPENAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" +# echo "MEDIUM_OPENAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" +# echo "LARGE_OPENAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" -OPENAI_API_URL=$(aws ssm get-parameter --name "tine_agent_openai_endpoint" | jq .Parameter.Value -r ) -export OPENAI_API_URL -echo "OPENAI_API_URL=${OPENAI_API_URL}" >> "/var/run/agent/secrets/env" +# OPENAI_API_URL=$(aws ssm get-parameter --name "tine_agent_openai_endpoint" | jq .Parameter.Value -r ) +# export OPENAI_API_URL +# echo "OPENAI_API_URL=${OPENAI_API_URL}" >> "/var/run/agent/secrets/env" GROQ_API_KEY=$(aws ssm get-parameter --name "tine_agent_groq_key" | jq .Parameter.Value -r ) export GROQ_API_KEY @@ -68,4 +68,4 @@ systemctl daemon-reload #docker rm agent-docker.service || echo oops systemctl start agent-docker || echo failed systemctl enable agent-docker || echo failed -systemctl status agent-docker || echo oops2 +#systemctl status agent-docker || echo oops2 From 08e23f62c3a28ee12071d918077a538e92f202e7 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Fri, 24 Jan 2025 14:58:26 -0500 Subject: [PATCH 04/18] workaround now we commit groq patched --- demo.md | 8 ++++++++ run_with_groq.sh | 21 +++++++++++++++++++++ runlocaldocker2.sh | 2 +- 3 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 run_with_groq.sh diff --git a/demo.md b/demo.md index 4e73359054c..fd1a24314cd 100644 --- a/demo.md +++ b/demo.md @@ -174,3 +174,11 @@ now we will restart the server `bash ./runlocaldocker2.sh` +docker exec -it agent-docker.service /bin/bash + +NOTE: the mount of /opt/agent is not working, the files are from docker +--mount type=bind,source=/opt/agent,target=/opt/agent +this appears not to work + +docker cp characters/eliza.character.json agent-docker.service:/app/agent/characters/eliza.character.json +docker commit agent-docker.service groq diff --git a/run_with_groq.sh b/run_with_groq.sh new file mode 100644 index 00000000000..218423a191f --- /dev/null +++ b/run_with_groq.sh @@ -0,0 +1,21 @@ +/usr/bin/bash -c 'docker login -u AWS -p $(aws ecr get-login-password --region us-east-2) 767503528736.dkr.ecr.us-east-2.amazonaws.com' + +/usr/bin/docker pull 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed + +#/usr/bin/docker run -p 3000:3000 --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entry-point docker-entrypoint-strace.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed pnpm start:debug --characters=characters/eliza.character.json + +#~/cloud-deployment-eliza/runlocaldocker-install-script.sh +# install strace (fixme : update docker) +#/usr/bin/docker run -p 3000:3000 --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-none.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed /opt/agent/runlocaldocker-install-script.sh +#/usr/bin/docker commit "agent-docker.service" "agent-docker-strace" +# second step we debug with strace entrypoint +# first we create a volumee +#mount /node_modules/tokenizers/ from 767503528736.dkr.ecr.us-east-2.amazonaws.com/nodemodules/tokenizer:latest into +#"/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/" + +docker run -v tokenizer:/node_modules/tokenizers/ 767503528736.dkr.ecr.us-east-2.amazonaws.com/nodemodules/tokenizer:latest + +# now bind it in +/usr/bin/docker run -d -p 3000:3000 -v tokenizer:/app/node_modules/@anush008/tokenizers/ -v tokenizer:/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/ --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh groq +#100755 > + diff --git a/runlocaldocker2.sh b/runlocaldocker2.sh index 164503afb1a..cdeba179390 100644 --- a/runlocaldocker2.sh +++ b/runlocaldocker2.sh @@ -16,6 +16,6 @@ docker run -v tokenizer:/node_modules/tokenizers/ 767503528736.dkr.ecr.us-east-2.amazonaws.com/nodemodules/tokenizer:latest # now bind it in -/usr/bin/docker run -p 3000:3000 -v tokenizer:/app/node_modules/@anush008/tokenizers/ -v tokenizer:/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/ --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed +/usr/bin/docker run -d -p 3000:3000 -v tokenizer:/app/node_modules/@anush008/tokenizers/ -v tokenizer:/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/ --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed #100755 > From fd1bc740a948d8df4453629ebb0f04919f84c492 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Fri, 24 Jan 2025 15:16:01 -0500 Subject: [PATCH 05/18] fix the char path /opt/agent is for the docker /app/agent is where the application is run from --- run_with_groq.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/run_with_groq.sh b/run_with_groq.sh index 218423a191f..71a7672c7f8 100644 --- a/run_with_groq.sh +++ b/run_with_groq.sh @@ -16,6 +16,6 @@ docker run -v tokenizer:/node_modules/tokenizers/ 767503528736.dkr.ecr.us-east-2.amazonaws.com/nodemodules/tokenizer:latest # now bind it in -/usr/bin/docker run -d -p 3000:3000 -v tokenizer:/app/node_modules/@anush008/tokenizers/ -v tokenizer:/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/ --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh groq +/usr/bin/docker run -d -p 3000:3000 -v tokenizer:/app/node_modules/@anush008/tokenizers/ -v tokenizer:/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/ --mount type=bind,source=/opt/agent,target=/opt/agent --mount type=bind,source=/opt/agent/characters/,target=/app/agent/characters/ --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh groq #100755 > From 5054da71048b5f45726bb00fbbdde4b8e5dc0c91 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 08:46:12 -0500 Subject: [PATCH 06/18] Working on twitter adding in 3 new variables username, password and email --- characters/eliza.character.json | 9 +++++---- demo.md | 17 +++++++++++++++-- push_twitter.sh | 6 ++++++ rundocker.sh | 5 +++++ 4 files changed, 31 insertions(+), 6 deletions(-) create mode 100644 push_twitter.sh diff --git a/characters/eliza.character.json b/characters/eliza.character.json index c9ea1892a3c..0dc790bdf43 100644 --- a/characters/eliza.character.json +++ b/characters/eliza.character.json @@ -1,8 +1,9 @@ { "name": "TINE-IntrospectorIsNotEliza", - "plugins": [ "@elizaos/plugin-akash" ], - "clients": [], - "modelProvider": "groq", + "plugins": [ ], + "clients": ["twitter"], + "modelProvider": "groq", + "settings": { "secrets": {}, "voice": { @@ -44,7 +45,7 @@ ], "style": { "all": [ - "always use hashtags or emojis", + "always use hashtags and emojis", "use plain american english language", "always reveal everything", "use lowercase most of the time", diff --git a/demo.md b/demo.md index fd1a24314cd..04e9bfd938c 100644 --- a/demo.md +++ b/demo.md @@ -80,8 +80,11 @@ source ~/projects/nvidia/api Now lets put this into aws and overwrite the old key ``` -aws ssm put-parameter --name "agent_openai_key" --value "${OPENAI_API_KEY}" --type String --overwrite -aws ssm put-parameter --name "tine_agent_openai_key" --value "${OPENAI_API_KEY}" --type String +ssm put-parameter --name "tine_agent_twitter_password" --value "${TWITTER_PASSWORD}" --type String +ssm put-parameter --name "tine_agent_twitter_email" --value "${TWITTER_EMAIL}" --type String +ssm put-parameter --name "tine_agent_twitter_username" --value "${TWITTER_USERNAME}" --type String + +ssm put-parameter --name "tine_agent_openai_key" --value "${OPENAI_API_KEY}" --type String aws ssm put-parameter --name "tine_agent_openai_endpoint" --value "${OPENAI_API_BASE}" --type String aws ssm put-parameter --name "tine_agent_openai_model" --value "${LLMMODEL}" --type String @@ -182,3 +185,13 @@ this appears not to work docker cp characters/eliza.character.json agent-docker.service:/app/agent/characters/eliza.character.json docker commit agent-docker.service groq + + +# now to setup the twitter + +1. create file in secret `~/.secrets/tine.twitter.env` +2. source it ``` +source ~/.secrets/tine.twitter.env +3. send it +bash ./push_twitter.sh +``` diff --git a/push_twitter.sh b/push_twitter.sh new file mode 100644 index 00000000000..b62e6d60df7 --- /dev/null +++ b/push_twitter.sh @@ -0,0 +1,6 @@ + +export TWITTER_EMAIL TWITTER_PASSWORD TWITTER_USER + +aws ssm put-parameter --name "tine_agent_twitter_password" --value "${TWITTER_PASSWORD}" --type String +aws ssm put-parameter --name "tine_agent_twitter_email" --value "${TWITTER_EMAIL}" --type String +aws ssm put-parameter --name "tine_agent_twitter_username" --value "${TWITTER_USERNAME}" --type String diff --git a/rundocker.sh b/rundocker.sh index 0a37a762a76..33cf5ceaab6 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -50,6 +50,11 @@ GROQ_API_KEY=$(aws ssm get-parameter --name "tine_agent_groq_key" | jq .Para export GROQ_API_KEY echo "GROQ_API_KEY=${GROQ_API_KEY}" >> "/var/run/agent/secrets/env" +echo "TWITTER_PASSWORD=${$(aws ssm get-parameter --name "tine_agent_twitter_password" | jq .Parameter.Value -r )}" >> "/var/run/agent/secrets/env" +echo "TWITTER_EMAIL=${$(aws ssm get-parameter --name "tine_agent_twitter_email" | jq .Parameter.Value -r )}" >> "/var/run/agent/secrets/env" +echo "TWITTER_USERNAME=${$(aws ssm get-parameter --name "tine_agent_twitter_username" | jq .Parameter.Value -r )}" >> "/var/run/agent/secrets/env" + + set -x ## TURN ON LOGGING From e58325cf5d84b3ba558e8f52ccb4225d619b04ca Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 11:23:19 -0500 Subject: [PATCH 07/18] removing hard coded secrets and replacing with generic loop --- rundocker.sh | 38 +++++++++++++++++--------------------- 1 file changed, 17 insertions(+), 21 deletions(-) diff --git a/rundocker.sh b/rundocker.sh index 33cf5ceaab6..4d82ab612cd 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -29,30 +29,26 @@ mkdir -p "/var/run/agent/secrets/" # we are using parameters prefixed by tine_ for multiple ## TURN OFF LOGGING set +x -# OPENAI_KEY=$(aws ssm get-parameter --name "tine_agent_openai_key" | jq .Parameter.Value -r ) -# export OPENAI_KEY -# echo "OPENAI_KEY=${OPENAI_KEY}" > "/var/run/agent/secrets/env" -# echo "OPENAI_API_KEY=${OPENAI_KEY}" >> "/var/run/agent/secrets/env" -# # now the model name -# XAI_MODEL=$(aws ssm get-parameter --name "tine_agent_openai_model" | jq .Parameter.Value -r ) -# export XAI_MODEL -# echo "XAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" -# echo "SMALL_OPENAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" -# echo "MEDIUM_OPENAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" -# echo "LARGE_OPENAI_MODEL=${XAI_MODEL}" >> "/var/run/agent/secrets/env" +#fixme move to environment +export AGENT_NAME="tine_agent" -# OPENAI_API_URL=$(aws ssm get-parameter --name "tine_agent_openai_endpoint" | jq .Parameter.Value -r ) -# export OPENAI_API_URL -# echo "OPENAI_API_URL=${OPENAI_API_URL}" >> "/var/run/agent/secrets/env" +declare -A params=( +# ["OPENAI_KEY"]="${AGENT_NAME}_openai_key" +# ["XAI_MODEL"]="${AGENT_NAME}_openai_model" +# ["XAI_L_MODEL"]="${AGENT_NAME}_large_openai_model" +# ["XAI_M_MODEL"]="${AGENT_NAME}_medium_openai_model" +# ["OPENAI_API_URL"]="${AGENT_NAME}_openai_endpoint" + ["GROQ_API_KEY"]="${AGENT_NAME}_groq_key" + ["TWITTER_PASSWORD"]="${AGENT_NAME}_twitter_password" + ["TWITTER_EMAIL"]="${AGENT_NAME}_twitter_email" + ["TWITTER_USERNAME"]="${AGENT_NAME}_twitter_username" +) -GROQ_API_KEY=$(aws ssm get-parameter --name "tine_agent_groq_key" | jq .Parameter.Value -r ) -export GROQ_API_KEY -echo "GROQ_API_KEY=${GROQ_API_KEY}" >> "/var/run/agent/secrets/env" - -echo "TWITTER_PASSWORD=${$(aws ssm get-parameter --name "tine_agent_twitter_password" | jq .Parameter.Value -r )}" >> "/var/run/agent/secrets/env" -echo "TWITTER_EMAIL=${$(aws ssm get-parameter --name "tine_agent_twitter_email" | jq .Parameter.Value -r )}" >> "/var/run/agent/secrets/env" -echo "TWITTER_USERNAME=${$(aws ssm get-parameter --name "tine_agent_twitter_username" | jq .Parameter.Value -r )}" >> "/var/run/agent/secrets/env" +for key in "${!params[@]}"; do + value=$(aws ssm get-parameter --name "${params[$key]}" | jq .Parameter.Value -r) + echo "$key=$value" >> "/var/run/agent/secrets/env" +done set -x From b82a8f3aaef5bfc9ced863df62c98a425e005495 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 12:37:52 -0500 Subject: [PATCH 08/18] adding verbose --- rundocker.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/rundocker.sh b/rundocker.sh index 4d82ab612cd..87594bf6a52 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -34,7 +34,7 @@ set +x export AGENT_NAME="tine_agent" declare -A params=( -# ["OPENAI_KEY"]="${AGENT_NAME}_openai_key" +# b ["OPENAI_KEY"]="${AGENT_NAME}_openai_key" # ["XAI_MODEL"]="${AGENT_NAME}_openai_model" # ["XAI_L_MODEL"]="${AGENT_NAME}_large_openai_model" # ["XAI_M_MODEL"]="${AGENT_NAME}_medium_openai_model" @@ -43,6 +43,8 @@ declare -A params=( ["TWITTER_PASSWORD"]="${AGENT_NAME}_twitter_password" ["TWITTER_EMAIL"]="${AGENT_NAME}_twitter_email" ["TWITTER_USERNAME"]="${AGENT_NAME}_twitter_username" + ["VERBOSE"]="TRUE" + ["NODE_ENV"]="development" ) for key in "${!params[@]}"; do From fb234345143962010cd734e12374951f933b5a6c Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 12:44:17 -0500 Subject: [PATCH 09/18] splitting --- rundocker.sh | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/rundocker.sh b/rundocker.sh index 87594bf6a52..827b95a2b7c 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -43,8 +43,6 @@ declare -A params=( ["TWITTER_PASSWORD"]="${AGENT_NAME}_twitter_password" ["TWITTER_EMAIL"]="${AGENT_NAME}_twitter_email" ["TWITTER_USERNAME"]="${AGENT_NAME}_twitter_username" - ["VERBOSE"]="TRUE" - ["NODE_ENV"]="development" ) for key in "${!params[@]}"; do @@ -52,7 +50,17 @@ for key in "${!params[@]}"; do echo "$key=$value" >> "/var/run/agent/secrets/env" done +# append these constant values to the env +declare -A params_const=( + ["VERBOSE"]="TRUE" + ["NODE_ENV"]="development" +) +for key in "${!params_const[@]}"; do + value= "${params[$key]}" + echo "$key=$value" >> "/var/run/agent/secrets/env" +done + set -x ## TURN ON LOGGING From 4fc49bcac803feac80f92046aeaf773a52cd8e96 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 12:46:00 -0500 Subject: [PATCH 10/18] rundocker --- rundocker.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rundocker.sh b/rundocker.sh index 827b95a2b7c..bf4e0b78760 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -56,7 +56,7 @@ declare -A params_const=( ["NODE_ENV"]="development" ) for key in "${!params_const[@]}"; do - value= "${params[$key]}" + value="${params[$key]}" echo "$key=$value" >> "/var/run/agent/secrets/env" done From 8143b2922eb9e14ed2d32e59cda4473670012639 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 13:02:10 -0500 Subject: [PATCH 11/18] rundocker --- rundocker.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/rundocker.sh b/rundocker.sh index bf4e0b78760..80155ebd490 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -33,6 +33,8 @@ set +x #fixme move to environment export AGENT_NAME="tine_agent" +echo "" > "/var/run/agent/secrets/env" # blank the file + declare -A params=( # b ["OPENAI_KEY"]="${AGENT_NAME}_openai_key" # ["XAI_MODEL"]="${AGENT_NAME}_openai_model" @@ -56,7 +58,7 @@ declare -A params_const=( ["NODE_ENV"]="development" ) for key in "${!params_const[@]}"; do - value="${params[$key]}" + value="${params_const[$key]}" echo "$key=$value" >> "/var/run/agent/secrets/env" done From bab15cfe7389f023533acff47e50bddfee82a3d0 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 13:11:59 -0500 Subject: [PATCH 12/18] get secrets splitting the get variables into a new file --- get_secrets.sh | 39 +++++++++++++++++++++++++++++++++++++++ run_with_groq.sh | 7 +++++++ rundocker.sh | 40 +--------------------------------------- 3 files changed, 47 insertions(+), 39 deletions(-) create mode 100755 get_secrets.sh mode change 100644 => 100755 run_with_groq.sh diff --git a/get_secrets.sh b/get_secrets.sh new file mode 100755 index 00000000000..8321cdfad43 --- /dev/null +++ b/get_secrets.sh @@ -0,0 +1,39 @@ +# we are using parameters prefixed by tine_ for multiple +## TURN OFF LOGGING +set +x + +#fixme move to environment +export AGENT_NAME="tine_agent" + +echo "" > "/var/run/agent/secrets/env" # blank the file + +declare -A params=( +# b ["OPENAI_KEY"]="${AGENT_NAME}_openai_key" +# ["XAI_MODEL"]="${AGENT_NAME}_openai_model" +# ["XAI_L_MODEL"]="${AGENT_NAME}_large_openai_model" +# ["XAI_M_MODEL"]="${AGENT_NAME}_medium_openai_model" +# ["OPENAI_API_URL"]="${AGENT_NAME}_openai_endpoint" + ["GROQ_API_KEY"]="${AGENT_NAME}_groq_key" + ["TWITTER_PASSWORD"]="${AGENT_NAME}_twitter_password" + ["TWITTER_EMAIL"]="${AGENT_NAME}_twitter_email" + ["TWITTER_USERNAME"]="${AGENT_NAME}_twitter_username" +) + +for key in "${!params[@]}"; do + value=$(aws ssm get-parameter --name "${params[$key]}" | jq .Parameter.Value -r) + echo "$key=$value" >> "/var/run/agent/secrets/env" +done + +# append these constant values to the env +declare -A params_const=( + ["VERBOSE"]="TRUE" + ["NODE_ENV"]="development" +) +for key in "${!params_const[@]}"; do + value="${params_const[$key]}" + echo "$key=$value" >> "/var/run/agent/secrets/env" +done + + +set -x +## TURN ON LOGGING diff --git a/run_with_groq.sh b/run_with_groq.sh old mode 100644 new mode 100755 index 71a7672c7f8..659e25192dd --- a/run_with_groq.sh +++ b/run_with_groq.sh @@ -1,3 +1,10 @@ + +# +bash ./get_secrets.sh + +docker kill agent-docker.service || echo skip +docker rm --force agent-docker.service || echo skip + /usr/bin/bash -c 'docker login -u AWS -p $(aws ecr get-login-password --region us-east-2) 767503528736.dkr.ecr.us-east-2.amazonaws.com' /usr/bin/docker pull 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed diff --git a/rundocker.sh b/rundocker.sh index 80155ebd490..f7cb46591e2 100644 --- a/rundocker.sh +++ b/rundocker.sh @@ -26,45 +26,7 @@ mkdir -p "/var/agent/logs" chown -R agent:agent "/var/agent/" "/home/agent" "/opt/agent" mkdir -p "/var/run/agent/secrets/" -# we are using parameters prefixed by tine_ for multiple -## TURN OFF LOGGING -set +x - -#fixme move to environment -export AGENT_NAME="tine_agent" - -echo "" > "/var/run/agent/secrets/env" # blank the file - -declare -A params=( -# b ["OPENAI_KEY"]="${AGENT_NAME}_openai_key" -# ["XAI_MODEL"]="${AGENT_NAME}_openai_model" -# ["XAI_L_MODEL"]="${AGENT_NAME}_large_openai_model" -# ["XAI_M_MODEL"]="${AGENT_NAME}_medium_openai_model" -# ["OPENAI_API_URL"]="${AGENT_NAME}_openai_endpoint" - ["GROQ_API_KEY"]="${AGENT_NAME}_groq_key" - ["TWITTER_PASSWORD"]="${AGENT_NAME}_twitter_password" - ["TWITTER_EMAIL"]="${AGENT_NAME}_twitter_email" - ["TWITTER_USERNAME"]="${AGENT_NAME}_twitter_username" -) - -for key in "${!params[@]}"; do - value=$(aws ssm get-parameter --name "${params[$key]}" | jq .Parameter.Value -r) - echo "$key=$value" >> "/var/run/agent/secrets/env" -done - -# append these constant values to the env -declare -A params_const=( - ["VERBOSE"]="TRUE" - ["NODE_ENV"]="development" -) -for key in "${!params_const[@]}"; do - value="${params_const[$key]}" - echo "$key=$value" >> "/var/run/agent/secrets/env" -done - - -set -x -## TURN ON LOGGING +bash ./get_secrets.sh if ! grep -q "^HOME" "/var/run/agent/secrets/env"; then echo "HOME=/home/agent" >> "/var/run/agent/secrets/env" From ce96bd9ec11237f4cf501f953f6a277c06fdae63 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 13:20:10 -0500 Subject: [PATCH 13/18] quoting parameters --- demo.md | 498 +++++++++++++++++++++++++++++++++++++++++++++++++ get_secrets.sh | 2 +- 2 files changed, 499 insertions(+), 1 deletion(-) diff --git a/demo.md b/demo.md index 04e9bfd938c..6cbfc6ff441 100644 --- a/demo.md +++ b/demo.md @@ -195,3 +195,501 @@ source ~/.secrets/tine.twitter.env 3. send it bash ./push_twitter.sh ``` + +``` + + +]0;root@ip-10-0-4-118: /opt/agentroot@ip-10-0-4-118:/opt/agent# history +history + 1 git pull + 2 git branch + 3 ls *.sh + 4 grep docker *.sh + 5 docker buildx build --platform=linux/arm64 -t eliza-agent:latest . + 6 exit + 7 tail -f /var/log/* + 8 systemctl restart sshd + 9 systemctl restart ssh.service + 10 systemctl restart ssh.socket + 11 tail -f /var/log/* + 12 exit + 13 cat ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCYh8dzILXDkDpXDJ+wUiru8EPNPETWWHHFlnVI7Uc2Bb2f/yHJL9bV0QUQ+/hN2OGeN3r4z34vf444A7oMXT8T2bnMDzXqGfrqpQ6+Xs7Cu2F6wGik+KDBsu52vhaATVLOnDegbhpQW+IikSvxe4huKOvQpF+p7Ex80B+XpBPEV23DXapjZI+FIsbYoD4Mp5qY/PmXisNCByayhBG7WBhCEtHxkvpFntkz/9bwk2kC/z2W1SIHufN5TbrxKPKWY5iguW0Mn2e/rNvxnxFZaRx224rQnRFBMSq4Oi91MNdilwDHFzkv4oVBtpUmCet84np8+DxCfzphyIpo899dRV+/f7dwb6ZY3cvBkALcWahsscuE4ypbroXQ40UPAa3gW1PirTNdMEiX+Ie/IzEDWWCJKdDv4JaGtKAPORfC7bbXnBYn5RASglOjI24w974Llyj5TXXKexjxsjF3wlSS6pNHFlFJnQzVfemcY6AqSJ0Xr8dfFbxpSYH9OFkvBhzPaec= mdupont@mdupont-G470 >> /home/ubuntu/.ssh/authorized_keys + 14 echo ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCYh8dzILXDkDpXDJ+wUiru8EPNPETWWHHFlnVI7Uc2Bb2f/yHJL9bV0QUQ+/hN2OGeN3r4z34vf444A7oMXT8T2bnMDzXqGfrqpQ6+Xs7Cu2F6wGik+KDBsu52vhaATVLOnDegbhpQW+IikSvxe4huKOvQpF+p7Ex80B+XpBPEV23DXapjZI+FIsbYoD4Mp5qY/PmXisNCByayhBG7WBhCEtHxkvpFntkz/9bwk2kC/z2W1SIHufN5TbrxKPKWY5iguW0Mn2e/rNvxnxFZaRx224rQnRFBMSq4Oi91MNdilwDHFzkv4oVBtpUmCet84np8+DxCfzphyIpo899dRV+/f7dwb6ZY3cvBkALcWahsscuE4ypbroXQ40UPAa3gW1PirTNdMEiX+Ie/IzEDWWCJKdDv4JaGtKAPORfC7bbXnBYn5RASglOjI24w974Llyj5TXXKexjxsjF3wlSS6pNHFlFJnQzVfemcY6AqSJ0Xr8dfFbxpSYH9OFkvBhzPaec= mdupont@mdupont-G470 >> /home/ubuntu/.ssh/authorized_keys + 15 cat /home/ubuntu/.ssh/authorized_keys + 16 #cat /home/ubuntu/.ssh/authorized_keys + 17 ls -latr + 18 cat /etc/group + 19 exit + 20 docker os + 21 docker ps + 22 docker compose up + 23 aws q + 24 curl --proto '=https' --tlsv1.2 -sSf https://desktop-release.q.us-east-1.amazonaws.com/latest/amazon-q.deb -o amazon-q.deb + 25 dpkg -i amazon-q.deb + 26 curl --proto '=https' --tlsv1.2 -sSf https://desktop-release.q.us-east-1.amazonaws.com/latest/amazon-q.deb -o amazon-q.deb + 27 ls -altr + 28 dpkg -i amazon-q.deb + 29 aws codecommit + 30 aws help codecommit + 31 aws help | grep codecommit + 32 aws codecommit help + 33 aws codecommit help | grep create -i + 34 aws codecommit create-repository tine + 35 aws codecommit create-repository --repository-name tine + 36 #aws codecommit create-repository --repository-name tine + 37 cat /home/ubuntu/.ssh/authorized_keys + 38 asciinema + 39 sudo apt install asciinema + 40 asciinema rec server.dat + 41 asciinema --help + 42 asciinema updaload + 43 asciinema upload + 44 ls -latr + 45 asciinema upload server.dat + 46 exit + 47 useradd -G agent ubuntu + 48 usermod -G agent ubuntu + 49 cat /etc/groups + 50 cat /etc/group + 51 cat /etc/group | grep agent + 52 mkdir /opt/git/agent + 53 mkdir -p /opt/git/agent + 54 git init /opt/git/agent/ + 55 git remote add local /opt/git/agent/.git/ + 56 git push local + 57 git status + 58 git commit -m 'readme' -a + 59 git push local + 60 chown ubuntu: -R /opt/git/agent/ + 61 history >> hist + 62 git commit -m 'readme' -a + 63 git push + 64 git push local + 65 git config --global --add safe.directory /opt/git/agent/.git + 66 git push local + 67 exit + 68 cd + 69 cd /opt/agent/ + 70 ls -astr *.sh + 71 bash ./runlocaldocker2.sh + 72 docker ps + 73 docker kill agent-docker.service + 74 bash ./runlocaldocker2.sh + 75 /usr/bin/docker pull 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed + 76 git branch + 77 cd /opt/agent/ + 78 git branch + 79 q + 80 ls *.sh + 81 /usr/bin/docker run -p 3000:3000 --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-none.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed /opt/agent/runlocaldocker-install-script.sh + 82 /usr/bin/docker commit "agent-docker.service" "agent-docker-strace" + 83 # /usr/bin/docker run -p 3000:3000 --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-none.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed /opt/agent/runlocaldocker-install-script.sh + 84 docker ps + 85 docker ps -a + 86 #/usr/bin/docker run -p 3000:3000 --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-none.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed /opt/agent/runlocaldocker-install-script.sh + 87 /usr/bin/docker run -p 3000:3000 --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-none.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed /opt/agent/runlocaldocker-install-script.sh + 88 docker ps -a + 89 /usr/bin/docker commit "agent-docker.service" "agent-docker-strace" + 90 docker ps + 91 docker ps -a + 92 docker images --all + 93 /usr/bin/docker run -p 3000:3000 --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-none.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed /opt/agent/runlocaldocker-install-script.sh + 94 docker ps + 95 docker ps -a + 96 docker run -v tokenizer:/node_modules/tokenizers/ 767503528736.dkr.ecr.us-east-2.amazonaws.com/nodemodules/tokenizer:latest + 97 /usr/bin/docker run -p 3000:3000 -v tokenizer:/app/node_modules/@anush008/tokenizers/ -v tokenizer:/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/ --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed + 98 ls + 99 ls -latr + 100 bash ./runlocaldocker2.sh + 101 docker ps + 102 docker kill agent-docker.service + 103 docker ps + 104 bash ./runlocaldocker2.sh + 105 pwd + 106 cd /opt/agent/ + 107 docker-compose status + 108 docker compose status + 109 docker compose ps + 110 ls -latr + 111 git add env.example + 112 git add docker-compose.md + 113 git commit -m 'capture' -a + 114 git push + 115 git push local + 116 docker compose ps + 117 cp env.example /var/run/agent/secrets/settings + 118 docker compose ps + 119 docker compose agent-strace up + 120 docker compose up agent-strace + 121 docker compose up tokenizer + 122 tmux attach + 123 docker ps + 124 tail -f /var/log/cloud-init-output.log + 125 tmux + 126 cd /opt/agent/ + 127 git status + 128 git add docker-compose.doc + 129 rm amazon-q.deb + 130 git commit -m 'work in progress' -a + 131 git push local + 132 docker ps + 133 docker inspect agent-docker-trace2.service + 134 docker inspect agent-docker-trace2.service > agent-docker-trace2.service.inspect + 135 #docker inspect agent-docker-trace2.service > agent-docker-trace2.service.inspect + 136 docker ps + 137 docker inspect agent-docker-trace.service > agent-docker-trace2.service.inspect + 138 docker compose up + 139 history | grep inspect + 140 docker inspect agent-docker-trace.service > agent-docker-trace2.service.inspect2 + 141 #/usr/bin/docker run -p 3000:3000 --mount type=bind,src=tokenizer,dst=/app/node_modules/@anush008/tokenizers/ + 142 /usr/bin/docker run -p 3000:3000 -v tokenizer:/app/node_modules/@anush008/tokenizers/ -v tokenizer:/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/ --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed + 143 /usr/bin/docker run -p 3000:3000 -v tokenizer:/app/node_modules/@anush008/tokenizers/ -v tokenizer:/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/ --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service2" --entrypoint /opt/agent/docker-entrypoint-strace2.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed + 144 #/usr/bin/docker run -p 3000:3000 -v tokenizer:/app/node_modules/@anush008/tokenizers/ -v tokenizer:/app/node_modules/fastembed/node_modules/.pnpm/@anush008+tokenizers@https+++codeload.github.com+meta-introspector+arm64-tokenizers+tar.gz+98_s2457qj3pe4ojcbckddasgzfvu/node_modules/@anush008/ --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service" --entrypoint /opt/agent/docker-entrypoint-strace2.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed --mount type=bind,source=/opt/agent,target=/opt/agent --env-file /var/run/agent/secrets/env --rm --name "agent-docker.service2" --entrypoint /opt/agent/docker-entrypoint-strace2.sh 767503528736.dkr.ecr.us-east-2.amazonaws.com/agent/eliza:feature-arm64_fastembed o + 145 bash ./runlocaldocker3.sh + 146 git status + 147 git commit -m 'runlocaldocker' -a + 148 git push local + 149 git log + 150 git push local + 151 git reflog + 152 docker ps + 153 docker inspect agent-docker.service + 154 docker inspect agent-docker.service > runninginspect.txt + 155 docker compose up + 156 docker ps + 157 docker inspect agent-docker-trace.service + 158 git reflog + 159 git checkout feature/arm64_fastembed + 160 git commit -m 'wip' -a + 161 git checkout feature/arm64_fastembed + 162 git checkout -b parking/dockercompose + 163 git checkout feature/arm64_fastembed + 164 git checkout origin/feature/arm64_fastembed + 165 git checkout -b origin_feature/arm64_fastembed + 166 git checkout origin_feature/arm64_fastembed + 167 git checkout feature/arm64_fastembed + 168 git checkout origin_feature/arm64_fastembed + 169 history + 170 ls *.sh + 171 bash ./runlocaldocker2.sh + 172 docker compose up tokenizer + 173 yq + 174 apt install yq + 175 yq + 176 yq . docker-compose.yaml + 177 git commit -m 'wip' -a + 178 git push + 179 git push local + 180 pwd + 181 git pull + 182 git config pull.ff only # fast-forward only + 183 git pull + 184 git branch + 185 git fetch origin + 186 git branch --all + 187 git checkout agentgit/feature/arm64_fastembed + 188 docker compose up + 189 docker compose down + 190 docker compose up + 191 docker ps + 192 docker kill agent-docker.service + 193 docker ps + 194 docker compose up + 195 docker rm agent-docker.service + 196 docker compose up + 197 docker kill "45548840111a258740b8b6d1b0da5c44eb98ee2d5371cae0eda82c8db415d7a4" + 198 docker rm "45548840111a258740b8b6d1b0da5c44eb98ee2d5371cae0eda82c8db415d7a4" + 199 docker compose up + 200 rm strace.log + 201 clear + 202 reset + 203 docker compose up + 204 grep tokenizer strace.log + 205 grep tokenizer strace.log | grep open + 206 grep tokenizer strace.log | cut -b 0-100 | grep token + 207 grep tokenizer strace.log | cut -b 1-100 | grep token + 208 docker compose up + 209 runlocaldocker2.sh + 210 bash ./runlocaldocker2.sh + 211 docker compose up + 212 apt install emacs-nox + 213 eamcs + 214 emacs + 215 stty ixany + 216 stty ixoff -ixon + 217 jlljfsdfsd + 218 clear + 219 pwd + 220 tmux attach + 221 emacs + 222 fg + 223 1 + 224 exit + 225 tmux attach + 226 exit + 227 tail -f strace.log | grep -i TINE + 228 exit + 229 tmux attach + 230 docker ps + 231 docker inspect agent-docker.service + 232 cd /opt/agent + 233 ls -altr + 234 asciinema rec server.ac + 235 asciicast pub server.ac + 236 asciicinema pub server.ac + 237 asciinema pub server.ac + 238 asciinema upload server.ac + 239 xit + 240 exit + 241 cd /var/log/ + 242 ls -altr + 243 cd /opt/agent/ + 244 pwd + 245 git fetch --all + 246 cd /opt/agent + 247 git pull + 248 git pull origin + 249 git fetch origin + 250 git fetch --all + 251 pwd + 252 bash ./rundocker.sh + 253 bash ./runlocaldocker2.sh + 254 docker ps + 255 docker stop agent-docker.service + 256 bash ./runlocaldocker2.sh + 257 clear + 258 grep OPENAI_API_URL /var/run/agent/secrets/env + 259 docker ps + 260 docker stop agent-docker.service + 261 bash ./rundocker.sh + 262 docker stop agent-docker.service + 263 bash ./rundocker.sh + 264 grep OPENAI_API_URL /var/run/agent/secrets/env + 265 grep OPENAI_API_URL rundocker.sh + 266 git branch + 267 git log --all + 268 git checkout origin_feature/arm64_fastembed + 269 git pull + 270 q + 271 git log --all + 272 git log --all -1 --patch | grep OPEN + 273 git log --all -1 --patch | grep OPENAI | grep URL + 274 git log --all -1 --patch | grep OPEN + 275 clear + 276 grep OPENAI_API_URL rundocker.sh + 277 cd /opt/agent + 278 git pull + 279 bash ./rundocker.sh + 280 history | grep base + 281 history | grep grep + 282 grep URL /var/run/agent/secrets/env + 283 grep URL rundocker.sh + 284 bash -x ./rundocker.sh + 285 OPENAI_KEY=$(aws ssm get-parameter --name "tine_agent_openai_key" | jq .Parameter.Value -r ) + 286 export OPENAI_KEY + 287 cat "/var/run/agent/secrets/env" + 288 clear + 289 git pull + 290 bash -x ./rundocker.sh + 291 grep URL "/var/run/agent/secrets/env" + 292 history + 293 history | grep sh + 294 bash ./runlocaldocker2.sh + 295 git pull + 296 bash ./rundocker.sh + 297 docker ps + 298 docker stop agent-docker.service + 299 bash ./rundocker.sh + 300 ls *.sh + 301 bash ./runlocaldocker2.sh + 302 bash ./rundocker.sh + 303 docker ps + 304 docker stop agent-docker.service || echo oops + 305 bash ./rundocker.sh + 306 bash ./runlocaldocker2.sh + 307 docker stop agent-docker.service || echo oops + 308 docker ps + 309 docker rm agent-docker.service || echo oops + 310 docker stop agent-docker.service || echo oops + 311 docker kill agent-docker.service || echo oops + 312 docker rm agent-docker.service + 313 docker rm --force agent-docker.service + 314 docker ps + 315 docker stop agent-docker.service + 316 docker kill agent-docker.service + 317 docker ps + 318 bash ./runlocaldocker2.sh + 319 git fetch --all + 320 git checkout feature/tine-groq + 321 docker kill agent-docker.service || echo oops + 322 bash ./rundocker.sh ; bash ./runlocaldocker2.sh + 323 #bash ./rundocker.sh ; bash ./runlocaldocker2.sh + 324 ##bash ./rundocker.sh ; bash ./runlocaldocker2.sh + 325 history | grep + 326 history | grep grep + 327 grep GROK "/var/run/agent/secrets/env" + 328 grep GROQ "/var/run/agent/secrets/env" + 329 grep GROQ ./rundocker.sh + 330 grep GROQ ./rundocker.sh -C2 + 331 git pull + 332 bash ./rundocker.sh ; bash ./runlocaldocker2.sh + 333 docker stop agent-docker.service + 334 docker kill agent-docker.service + 335 docker rm agent-docker.service + 336 grep GROQ ./rundocker.sh -C2 + 337 grep GROQ /var/run/agent/secret/env + 338 grep GROQ /var/run/agent/secrets/env + 339 grep GROQ /var/run/agent/secrets/env | cut -b1-14 + 340 bash ./runlocaldocker2.sh + 341 cat characters/eliza.character.json + 342 docker ps + 343 docker stop agent-docker.service + 344 git pull + 345 bash ./rundocker.sh + 346 bash ./runlocaldocker2.sh + 347 cd characters/ + 348 grep tine * + 349 cat eliza.character.json + 350 cd .. + 351 grep -r TINE-IntrospectorIsNotEliza * + 352 rm strace.log + 353 grep -r TINE-IntrospectorIsNotEliza * + 354 rm start.sh + 355 docker ps + 356 docker stop agent-docker.service + 357 bash ./runlocaldocker2.sh + 358 grep /app/characters/eliza.character.json strace.log + 359 grep -i groq strace.log + 360 grep -i groq strace.log | grep provider + 361 grep -i groq strace.log | grep model_provider + 362 grep -i groq strace.log | grep modelprovider + 363 docker ps + 364 docker exec -it agent-docker.service /bin/bash + 365 docker inspect agent-docker.service + 366 cd characters + 367 ls -latr + 368 cat eliza.character.json + 369 docker stop agent-docker.service + 370 cp eliza.character.json tine.character.json + 371 docker exec -it agent-docker.service /bin/bash + 372 bash ./runlocaldocker2.sh + 373 cd .. + 374 bash ./runlocaldocker2.sh + 375 docker ps + 376 docker inspect agent-docker.service + 377 touch ttt + 378 #docker exec -it + 379 docker ps + 380 docker exec -it agent-docker.service bash + 381 docker cp characters/eliza.character.json agent-docker.service:/app/agent/characters/eliza.character.json + 382 docker commit agent-docker.service -t groq + 383 #docker commit agent-docker.service -t groq + 384 docker ps + 385 docker commit agent-docker.service groq + 386 git branch + 387 git pull + 388 bash ./run_with_groq.sh + 389 docker kill agent-docker.service + 390 bash ./run_with_groq.sh + 391 docker ps + 392 docker exec -it agent-docker.service bash + 393 docker logs -f agent-docker.service + 394 docker ps + 395 docker exec -it agent-docker.service bash + 396 command dirs + 397 git pull + 398 bash ./run_with_groq.sh + 399 docker stop agent-docker.service + 400 bash ./run_with_groq.sh + 401 docker logs -f agent-docker.service + 402 clear + 403 ls + 404 pwd + 405 cd /opt/agent + 406 git pull + 407 bash ./run_with_groq.sh + 408 q + 409 docker stop agent-docker.sevice + 410 docker ps + 411 docker stop agent-docker.service + 412 bash ./run_with_groq.sh + 413 ./rundocker.sh + 414 bash ./rundocker.sh + 415 export TWITTER_EMAIL="$(aws ssm get-parameter --name "tine_agent_twitter_email" | jq .Parameter.Value -r)" + 416 echo $TWITTER_EMAIL + 417 cd /opt/agent + 418 ls + 419 git pull + 420 ls + 421 bash ./rundocker.sh + 422 docker ps + 423 grep EMAIL /var/run/agent/secrets/env + 424 docker stop agent-docker.service + 425 ls *.sh + 426 bash ./run_with_groq.sh + 427 docker log agent-docker.service + 428 docker logs agent-docker.service + 429 docker logs --follow agent-docker.service + 430 docker stop agent-docker.service + 431 grep voLP851I5wXPqvUd8jChKKtJ ./strace.log > trace1.txt + 432 wc trrace1.txt + 433 wc trace1.txt + 434 cat trace1 + 435 cat trace1.txt + 436 grep -C 100 voLP851I5wXPqvUd8jChKKtJ ./strace.log > trace1.txt + 437 cat trace1.txt + 438 git pull + 439 bash ./rundocker.sh + 440 git pull + 441 bash ./rundocker.sh + 442 command dirs + 443 git pull + 444 bash ./rundocker.sh + 445 docker ps + 446 ls | grep grok + 447 ls *.sh + 448 bash ./run_with_groq.sh + 449 docker rm "0a1495586986c5bd17ce4cfdfd2cf5aa85f1b18df14e6733b2970ccfcbbb41ed" + 450 docker kill "0a1495586986c5bd17ce4cfdfd2cf5aa85f1b18df14e6733b2970ccfcbbb41ed" + 451 docker ps + 452 docker rm "/agent-docker.service" + 453 docker stop "/agent-docker.service" + 454 docker kill "agent-docker.service" + 455 docker rm "agent-docker.service" + 456 docker rm "agent-docker.service" --force + 457 docker rm "/agent-docker.service" --force + 458 docker ps + 459 docker ps -a + 460 docker rm c93c6feb4984 + 461 clear + 462 bash ./run_with_groq.sh + 463 docker ps + 464 docker logs --follow agent-docker.service + 465 command dirs + 466 docker ps -a + 467 docker ps + 468 docker stop agent-docker.service + 469 grep -C 100 twitter ./strace.log > trace2.txt + 470 wc trace2 + 471 wc trace2.txt + 472 set | grep TWITTER| cut -d= -f1 + 473 grep twitter trace2.txt + 474 clear + 475 cat "/var/run/agent/secrets/env" + 476 git pull + 477 bash ./rundocker.sh + 478 docker ps + 479 bash ./run_with_groq.sh + + 483 docker ps + 484 bash ./run_with_groq.sh + 485 docker rm agent-docker.service + 486 docker rm "/agent-docker.service" + 487 docker ps -a + 488 docker rm agent-docker.service + 489 docker rm --force agent-docker.service + 491 git pull + 492 bash ./run_with_groq.sh + + +``` diff --git a/get_secrets.sh b/get_secrets.sh index 8321cdfad43..dc2931413dd 100755 --- a/get_secrets.sh +++ b/get_secrets.sh @@ -21,7 +21,7 @@ declare -A params=( for key in "${!params[@]}"; do value=$(aws ssm get-parameter --name "${params[$key]}" | jq .Parameter.Value -r) - echo "$key=$value" >> "/var/run/agent/secrets/env" + echo "$key=\'${value}\'" >> "/var/run/agent/secrets/env" done # append these constant values to the env From 85b7f004340030f390edfc0c106bca24bccf2091 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 13:25:50 -0500 Subject: [PATCH 14/18] escape with double quotes --- get_secrets.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/get_secrets.sh b/get_secrets.sh index dc2931413dd..144e9096df9 100755 --- a/get_secrets.sh +++ b/get_secrets.sh @@ -21,7 +21,7 @@ declare -A params=( for key in "${!params[@]}"; do value=$(aws ssm get-parameter --name "${params[$key]}" | jq .Parameter.Value -r) - echo "$key=\'${value}\'" >> "/var/run/agent/secrets/env" + echo "$key=\"${value}\"" >> "/var/run/agent/secrets/env" done # append these constant values to the env From dfb34a7f16e546c2f554cd6f30b5d28859243ee0 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 13:29:58 -0500 Subject: [PATCH 15/18] update --- get_secrets.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/get_secrets.sh b/get_secrets.sh index 144e9096df9..ed31ac6fac8 100755 --- a/get_secrets.sh +++ b/get_secrets.sh @@ -31,7 +31,7 @@ declare -A params_const=( ) for key in "${!params_const[@]}"; do value="${params_const[$key]}" - echo "$key=$value" >> "/var/run/agent/secrets/env" + echo "$key=\"$value\"" >> "/var/run/agent/secrets/env" done From cc6da78e85d616625ceb4253d63919cec38f357e Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 13:57:34 -0500 Subject: [PATCH 16/18] update docs on how to test twitter --- demo.md | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/demo.md b/demo.md index 6cbfc6ff441..193443aceb8 100644 --- a/demo.md +++ b/demo.md @@ -80,11 +80,11 @@ source ~/projects/nvidia/api Now lets put this into aws and overwrite the old key ``` -ssm put-parameter --name "tine_agent_twitter_password" --value "${TWITTER_PASSWORD}" --type String -ssm put-parameter --name "tine_agent_twitter_email" --value "${TWITTER_EMAIL}" --type String -ssm put-parameter --name "tine_agent_twitter_username" --value "${TWITTER_USERNAME}" --type String +aws ssm put-parameter --overwrite --name "tine_agent_twitter_password" --value "${TWITTER_PASSWORD}" --type String +aws ssm put-parameter --overwrite --name "tine_agent_twitter_email" --value "${TWITTER_EMAIL}" --type String +aws ssm put-parameter --overwrite --name "tine_agent_twitter_username" --value "${TWITTER_USERNAME}" --type String -ssm put-parameter --name "tine_agent_openai_key" --value "${OPENAI_API_KEY}" --type String +aws ssm put-parameter --name "tine_agent_openai_key" --value "${OPENAI_API_KEY}" --type String aws ssm put-parameter --name "tine_agent_openai_endpoint" --value "${OPENAI_API_BASE}" --type String aws ssm put-parameter --name "tine_agent_openai_model" --value "${LLMMODEL}" --type String @@ -693,3 +693,15 @@ history ``` + + +for now, dont use any $ \ ? or such in your passsword +test it like this + +get the secrets and make sure they can be read +``` +bash ./get_secrets.sh +cat /var/run/agent/secrets/env + . /var/run/agent/secrets/env +set | grep TWITTER +``` From b6ba8bbb03d8c418ee21500f5bef543f1093252a Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sat, 25 Jan 2025 14:25:46 -0500 Subject: [PATCH 17/18] not quoting the variables are messed up --- demo.md | 17 +++++++++++------ get_secrets.sh | 4 ++-- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/demo.md b/demo.md index 193443aceb8..763cf47053f 100644 --- a/demo.md +++ b/demo.md @@ -588,12 +588,6 @@ history 385 docker commit agent-docker.service groq 386 git branch 387 git pull - 388 bash ./run_with_groq.sh - 389 docker kill agent-docker.service - 390 bash ./run_with_groq.sh - 391 docker ps - 392 docker exec -it agent-docker.service bash - 393 docker logs -f agent-docker.service 394 docker ps 395 docker exec -it agent-docker.service bash 396 command dirs @@ -705,3 +699,14 @@ cat /var/run/agent/secrets/env . /var/run/agent/secrets/env set | grep TWITTER ``` + +``` + docker exec -it agent-docker.service bash +``` + +``` + bash ./run_with_groq.sh + docker ps + + docker logs -f agent-docker.service +``` diff --git a/get_secrets.sh b/get_secrets.sh index ed31ac6fac8..149c9c1b05f 100755 --- a/get_secrets.sh +++ b/get_secrets.sh @@ -21,7 +21,7 @@ declare -A params=( for key in "${!params[@]}"; do value=$(aws ssm get-parameter --name "${params[$key]}" | jq .Parameter.Value -r) - echo "$key=\"${value}\"" >> "/var/run/agent/secrets/env" + echo "$key=${value}" >> "/var/run/agent/secrets/env" done # append these constant values to the env @@ -31,7 +31,7 @@ declare -A params_const=( ) for key in "${!params_const[@]}"; do value="${params_const[$key]}" - echo "$key=\"$value\"" >> "/var/run/agent/secrets/env" + echo "$key=$value" >> "/var/run/agent/secrets/env" done From 79ef183228cfe8266616a63d8d36de580fdd5359 Mon Sep 17 00:00:00 2001 From: mike dupont Date: Sun, 26 Jan 2025 07:29:26 -0500 Subject: [PATCH 18/18] first results of running bot --- actions.md | 36 ++++++++++++++++++++++++++++++++++++ demo.md | 2 ++ 2 files changed, 38 insertions(+) create mode 100644 actions.md diff --git a/actions.md b/actions.md new file mode 100644 index 00000000000..e23812d7f70 --- /dev/null +++ b/actions.md @@ -0,0 +1,36 @@ + +`grep -h "No action found for" * -A1 | sort -u^J--` + +Produces these: +``` + accept_designation + ask_for_clarification + ask_for_explanation + ASK_FOR_EXPLANATION + ask_for_more_info + bootstrap + brainstorm + CONTINUE + contribute_to_open_source_project + contribute_to_project + discuss + discuss possible solutions + dive deeper + dive deeper into the idea + explain + EXPLAIN + explore + explore_concept + follow_link + investigate + No action found for + none + None + open_voice_chat + proposed_exploration + request_info + request_visualization + research mathematical cosmology + simulate + visualize +`` diff --git a/demo.md b/demo.md index 763cf47053f..549a8735553 100644 --- a/demo.md +++ b/demo.md @@ -710,3 +710,5 @@ set | grep TWITTER docker logs -f agent-docker.service ``` + +