mirror of
https://github.com/mudler/LocalAGI.git
synced 2026-08-26 18:47:04 -04:00
391e007bc2
LocalAGI speaks MCP as a client, so an agent can use external tools, but nothing outside the process can create or configure an agent except the REST API and the Web UI that sits on it. The web server now also answers MCP at /mcp, with eight tools over the same agent pool the REST handlers use: list, read, create, update, delete, pause, start, and a schema tool that reports the connectors, actions, dynamic prompts and filters the instance provides. The endpoint mounts after the API key middleware, so MCP clients authenticate with the bearer token that already guards the REST API. It runs stateless and replies with JSON rather than an event stream, because each call is one request and one response, which is what survives the fasthttp adaptor. The create and update schemas come from state.AgentConfig by reflection, so they follow the struct as it grows. Reflection marks every field without omitempty as required, which would force a client to send all 58 of them, so both tools require only the agent name. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011wnxzYVrUZ7xtpqAGHM474
164 lines
7.3 KiB
Modula-2
164 lines
7.3 KiB
Modula-2
module github.com/mudler/LocalAGI
|
|
|
|
go 1.26.0
|
|
|
|
require (
|
|
github.com/Masterminds/sprig/v3 v3.3.0
|
|
github.com/blevesearch/bleve/v2 v2.5.7
|
|
github.com/bwmarrin/discordgo v0.29.0
|
|
github.com/chasefleming/elem-go v0.30.0
|
|
github.com/dave-gray101/v2keyauth v0.0.0-20240624150259-c45d584d25e2
|
|
github.com/dhowden/tag v0.0.0-20240417053706-3d75831295e8
|
|
github.com/eritikass/githubmarkdownconvertergo v0.1.10
|
|
github.com/go-telegram/bot v1.17.0
|
|
github.com/gofiber/fiber/v2 v2.52.11
|
|
github.com/gofiber/template/html/v2 v2.1.3
|
|
github.com/google/go-github/v69 v69.2.0
|
|
github.com/google/jsonschema-go v0.3.0
|
|
github.com/google/uuid v1.6.0
|
|
github.com/jung-kurt/gofpdf v1.16.2
|
|
github.com/modelcontextprotocol/go-sdk v1.2.0
|
|
github.com/mudler/cogito v0.9.5-0.20260315222927-63abdec7189b
|
|
github.com/mudler/localrecall v0.6.3-0.20260618142827-d0073dd5dc32
|
|
github.com/mudler/skillserver v0.0.5-0.20260221145827-0639a82c8f49
|
|
github.com/mudler/xlog v0.0.5
|
|
github.com/onsi/ginkgo/v2 v2.28.1
|
|
github.com/onsi/gomega v1.39.1
|
|
github.com/philippgille/chromem-go v0.7.0
|
|
github.com/robfig/cron/v3 v3.0.1
|
|
github.com/sashabaranov/go-openai v1.41.2
|
|
github.com/slack-go/slack v0.17.3
|
|
github.com/spf13/cobra v1.10.2
|
|
github.com/thoj/go-ircevent v0.0.0-20210723090443-73e444401d64
|
|
github.com/tmc/langchaingo v0.1.14
|
|
github.com/traefik/yaegi v0.16.1
|
|
github.com/valyala/fasthttp v1.68.0
|
|
golang.org/x/crypto v0.50.0
|
|
jaytaylor.com/html2text v0.0.0-20230321000545-74c2419ad056
|
|
maunium.net/go/mautrix v0.17.0
|
|
mvdan.cc/xurls/v2 v2.6.0
|
|
)
|
|
|
|
require (
|
|
dario.cat/mergo v1.0.2 // indirect
|
|
github.com/JohannesKaufmann/dom v0.2.0 // indirect
|
|
github.com/Masterminds/goutils v1.1.1 // indirect
|
|
github.com/Masterminds/semver/v3 v3.4.0 // indirect
|
|
github.com/Microsoft/go-winio v0.6.2 // indirect
|
|
github.com/ProtonMail/go-crypto v1.1.6 // indirect
|
|
github.com/RoaringBitmap/roaring/v2 v2.4.5 // indirect
|
|
github.com/bits-and-blooms/bitset v1.22.0 // indirect
|
|
github.com/blevesearch/bleve_index_api v1.2.11 // indirect
|
|
github.com/blevesearch/geo v0.2.4 // indirect
|
|
github.com/blevesearch/go-faiss v1.0.26 // indirect
|
|
github.com/blevesearch/go-porterstemmer v1.0.3 // indirect
|
|
github.com/blevesearch/gtreap v0.1.1 // indirect
|
|
github.com/blevesearch/mmap-go v1.0.4 // indirect
|
|
github.com/blevesearch/scorch_segment_api/v2 v2.3.13 // indirect
|
|
github.com/blevesearch/segment v0.9.1 // indirect
|
|
github.com/blevesearch/snowballstem v0.9.0 // indirect
|
|
github.com/blevesearch/upsidedown_store_api v1.0.2 // indirect
|
|
github.com/blevesearch/vellum v1.1.0 // indirect
|
|
github.com/blevesearch/zapx/v11 v11.4.2 // indirect
|
|
github.com/blevesearch/zapx/v12 v12.4.2 // indirect
|
|
github.com/blevesearch/zapx/v13 v13.4.2 // indirect
|
|
github.com/blevesearch/zapx/v14 v14.4.2 // indirect
|
|
github.com/blevesearch/zapx/v15 v15.4.2 // indirect
|
|
github.com/blevesearch/zapx/v16 v16.2.8 // indirect
|
|
github.com/cloudflare/circl v1.6.1 // indirect
|
|
github.com/cyphar/filepath-securejoin v0.4.1 // indirect
|
|
github.com/emirpasic/gods v1.18.1 // indirect
|
|
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
|
|
github.com/go-git/go-billy/v5 v5.6.2 // indirect
|
|
github.com/go-git/go-git/v5 v5.16.4 // indirect
|
|
github.com/gofiber/template v1.8.3 // indirect
|
|
github.com/gofiber/utils v1.1.0 // indirect
|
|
github.com/golang/snappy v0.0.4 // indirect
|
|
github.com/gorilla/websocket v1.5.3 // indirect
|
|
github.com/huandu/xstrings v1.5.0 // indirect
|
|
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
|
github.com/jackc/pgpassfile v1.0.0 // indirect
|
|
github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect
|
|
github.com/jackc/pgx/v5 v5.8.0 // indirect
|
|
github.com/jackc/puddle/v2 v2.2.2 // indirect
|
|
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
|
|
github.com/jolestar/go-commons-pool/v2 v2.1.2 // indirect
|
|
github.com/json-iterator/go v1.1.12 // indirect
|
|
github.com/kevinburke/ssh_config v1.2.0 // indirect
|
|
github.com/klippa-app/go-pdfium v1.19.2 // indirect
|
|
github.com/mitchellh/copystructure v1.2.0 // indirect
|
|
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
|
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
|
github.com/modern-go/reflect2 v1.0.2 // indirect
|
|
github.com/mschoch/smat v0.2.0 // indirect
|
|
github.com/oxffaa/gopher-parse-sitemap v0.0.0-20191021113419-005d2eb1def4 // indirect
|
|
github.com/pjbgf/sha1cd v0.3.2 // indirect
|
|
github.com/sergi/go-diff v1.4.0 // indirect
|
|
github.com/shopspring/decimal v1.4.0 // indirect
|
|
github.com/skeema/knownhosts v1.3.1 // indirect
|
|
github.com/spf13/cast v1.7.0 // indirect
|
|
github.com/spf13/pflag v1.0.9 // indirect
|
|
github.com/tetratelabs/wazero v1.11.0 // indirect
|
|
github.com/xanzy/ssh-agent v0.3.3 // indirect
|
|
github.com/yosida95/uritemplate/v3 v3.0.2 // indirect
|
|
go.etcd.io/bbolt v1.4.0 // indirect
|
|
go.yaml.in/yaml/v3 v3.0.4 // indirect
|
|
golang.org/x/mod v0.34.0 // indirect
|
|
golang.org/x/oauth2 v0.30.0 // indirect
|
|
golang.org/x/sync v0.20.0 // indirect
|
|
gopkg.in/warnings.v0 v0.1.2 // indirect
|
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
|
)
|
|
|
|
require (
|
|
github.com/JohannesKaufmann/html-to-markdown/v2 v2.4.0
|
|
github.com/PuerkitoBio/goquery v1.10.3 // indirect
|
|
github.com/andybalholm/brotli v1.2.0 // indirect
|
|
github.com/andybalholm/cascadia v1.3.3 // indirect
|
|
github.com/antchfx/htmlquery v1.3.4 // indirect
|
|
github.com/antchfx/xmlquery v1.4.4 // indirect
|
|
github.com/antchfx/xpath v1.3.4 // indirect
|
|
github.com/dlclark/regexp2 v1.11.5 // indirect
|
|
github.com/emersion/go-imap/v2 v2.0.0-beta.5
|
|
github.com/emersion/go-message v0.18.2
|
|
github.com/emersion/go-sasl v0.0.0-20241020182733-b788ff22d5a6
|
|
github.com/emersion/go-smtp v0.24.0
|
|
github.com/go-logr/logr v1.4.3 // indirect
|
|
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
|
|
github.com/gobwas/glob v0.2.3 // indirect
|
|
github.com/gocolly/colly v1.2.0 // indirect
|
|
github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 // indirect
|
|
github.com/golang/protobuf v1.5.4 // indirect
|
|
github.com/gomarkdown/markdown v0.0.0-20250311123330-531bef5e742b
|
|
github.com/google/go-cmp v0.7.0 // indirect
|
|
github.com/google/go-querystring v1.1.0 // indirect
|
|
github.com/google/pprof v0.0.0-20260115054156-294ebfa9ad83 // indirect
|
|
github.com/kennygrant/sanitize v1.2.4 // indirect
|
|
github.com/klauspost/compress v1.18.1 // indirect
|
|
github.com/mattn/go-colorable v0.1.14 // indirect
|
|
github.com/mattn/go-isatty v0.0.20 // indirect
|
|
github.com/mattn/go-runewidth v0.0.16 // indirect
|
|
github.com/olekukonko/tablewriter v0.0.5 // indirect
|
|
github.com/pkoukk/tiktoken-go v0.1.7 // indirect
|
|
github.com/rivo/uniseg v0.4.7 // indirect
|
|
github.com/rs/zerolog v1.31.0 // indirect
|
|
github.com/saintfish/chardet v0.0.0-20230101081208-5e3ef4b5456d // indirect
|
|
github.com/ssor/bom v0.0.0-20170718123548-6386211fdfcf // indirect
|
|
github.com/temoto/robotstxt v1.1.2 // indirect
|
|
github.com/tidwall/gjson v1.18.0 // indirect
|
|
github.com/tidwall/match v1.1.1 // indirect
|
|
github.com/tidwall/pretty v1.2.1 // indirect
|
|
github.com/tidwall/sjson v1.2.5 // indirect
|
|
github.com/valyala/bytebufferpool v1.0.0 // indirect
|
|
go.mau.fi/util v0.3.0 // indirect
|
|
go.starlark.net v0.0.0-20250417143717-f57e51f710eb // indirect
|
|
golang.org/x/exp v0.0.0-20240808152545-0cdaa3abc0fa
|
|
golang.org/x/net v0.53.0 // indirect
|
|
golang.org/x/sys v0.43.0 // indirect
|
|
golang.org/x/text v0.36.0 // indirect
|
|
golang.org/x/tools v0.43.0 // indirect
|
|
google.golang.org/appengine v1.6.8 // indirect
|
|
google.golang.org/protobuf v1.36.10 // indirect
|
|
maunium.net/go/maulogger/v2 v2.4.1 // indirect
|
|
)
|