diff --git a/README.md b/README.md index 6f53bd3..7452f9f 100644 --- a/README.md +++ b/README.md @@ -115,23 +115,21 @@ MY_TASKFLOWS=~/my_taskflows MY_DATA=~/codeql_databases CODEQL_DBS_BASE_PATH=/app For more advanced scenarios like e.g. making custom MCP server code available, you can alter the run script to mount your custom code into the image and configure your toolboxes to use said code accordingly. -Example: a custom MCP server deployment via Docker image: - ```sh export MY_MCP_SERVERS="$PWD"/mcp_servers export MY_TOOLBOXES="$PWD"/toolboxes export MY_PERSONALITIES="$PWD"/personalities export MY_TASKFLOWS="$PWD"/taskflows export MY_PROMPTS="$PWD"/prompts +export MY_DATA="$PWD"/data if [ ! -f ".env" ]; then touch ".env" fi docker run \ - --volume /var/run/docker.sock:/var/run/docker.sock \ --volume "$PWD"/logs:/app/logs \ - --mount type=bind,src="$PWD"/env,dst=/app/.env,ro \ + --mount type=bind,src="$PWD"/.env,dst=/app/.env,ro \ ${MY_DATA:+--mount type=bind,src=$MY_DATA,dst=/app/my_data} \ ${MY_MCP_SERVERS:+--mount type=bind,src=$MY_MCP_SERVERS,dst=/app/my_mcp_servers,ro} \ ${MY_TASKFLOWS:+--mount type=bind,src=$MY_TASKFLOWS,dst=/app/taskflows/my_taskflows,ro} \ @@ -141,19 +139,6 @@ docker run \ "ghcr.io/githubsecuritylab/seclab-taskflow-agent" "$@" ``` -Our default run script makes the Docker socket available to the image, which contains the Docker cli, so 3rd party Docker based stdio MCP servers also function as normal. - -Example: a toolbox configuration using the official GitHub MCP Server via Docker: - -```yaml -server_params: - kind: stdio - command: docker - args: ["run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server"] - env: - GITHUB_PERSONAL_ACCESS_TOKEN: "{{ env GITHUB_PERSONAL_ACCESS_TOKEN }}" -``` - ## Personalities Core characteristics for a single Agent. Configured through YAML files in `personalities/`. diff --git a/docker/run.sh b/docker/run.sh index 798a450..4e77ad4 100755 --- a/docker/run.sh +++ b/docker/run.sh @@ -5,7 +5,6 @@ if [ ! -f ".env" ]; then fi docker run -i \ --platform linux/amd64 \ - --volume /var/run/docker.sock:/var/run/docker.sock \ --volume "$PWD/"logs:/app/logs \ --mount type=bind,src="$PWD/".env,dst=/app/.env,ro \ ${MY_DATA:+--mount type=bind,src=$MY_DATA,dst=/app/my_data} \ diff --git a/taskflows/examples/example_large_list_result_iter.yaml b/taskflows/examples/example_large_list_result_iter.yaml index b94c713..bb0ae87 100644 --- a/taskflows/examples/example_large_list_result_iter.yaml +++ b/taskflows/examples/example_large_list_result_iter.yaml @@ -17,6 +17,6 @@ taskflow: must_complete: true repeat_prompt: true agents: - - echo + - assistant user_prompt: | Echo this: The title is {{ RESULT_title }} and the url is {{ RESULT_url }}. diff --git a/toolboxes/github_official.yaml b/toolboxes/github_official.yaml index 0321281..e1cde32 100644 --- a/toolboxes/github_official.yaml +++ b/toolboxes/github_official.yaml @@ -3,8 +3,7 @@ seclab-taskflow-agent: version: 1 server_params: - kind: stdio - command: docker - args: ["run", "-i", "--rm", "-e", "GITHUB_PERSONAL_ACCESS_TOKEN", "ghcr.io/github/github-mcp-server"] - env: - GITHUB_PERSONAL_ACCESS_TOKEN: "{{ env GITHUB_PERSONAL_ACCESS_TOKEN }}" + kind: streamable + url: https://api.githubcopilot.com/mcp/ + headers: + Authorization: "{{ env GITHUB_AUTH_HEADER }}" \ No newline at end of file