MCPcopy Index your code
hub / github.com/cashapp/hermit

github.com/cashapp/hermit @v0.52.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.52.3 ↗ · + Follow
1,184 symbols 4,826 edges 144 files 509 documented · 43%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Hermit

Hermit - uniform tooling for Linux and Mac

CI Slack chat Go Report Card

Hermit installs tools for software projects in self-contained, isolated sets, so your team, your contributors, and your CI have the same consistent tooling.

See https://cashapp.github.io/hermit for full documentation.

hermit intro screen cast

Releasing new versions

For information about the release process, see RELEASE.md.


Copyright 2021 Square, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Extension points exported contracts — how you extend this code

Op (Interface)
Op is an operation on an environment variable. [6 implementers]
envars/ops.go
SyncWriter (Interface)
SyncWriter is an io.Writer that can be Sync()ed. [10 implementers]
ui/ui.go
Action (Interface)
Action interface implemented by all lifecycle trigger actions. [8 implementers]
manifest/actions.go
PackageSource (Interface)
PackageSource for a specific version / system of a package [4 implementers]
cache/source.go
Source (Interface)
Source is a single source for manifest files [4 implementers]
sources/sources.go
CommandRunner (Interface)
CommandRunner abstracts how we run command in a given directory [2 implementers]
util/run.go
Shell (Interface)
Shell abstracts shell specific functionality [1 implementers]
shell/shell.go
Logger (Interface)
Logger interface. [1 implementers]
ui/logger.go

Core symbols most depended-on inside this repo

WithStack
called by 451
errors/errors.go
String
called by 109
manifest/actions.go
Close
called by 98
vfs/memory.go
Errorf
called by 79
errors/errors.go
Wrapf
called by 58
errors/errors.go
Task
called by 52
ui/ui.go
Wrap
called by 47
errors/errors.go
Stat
called by 45
sources/sources.go

Shape

Method 537
Function 457
Struct 155
TypeAlias 16
Interface 12
FuncType 6
Class 1

Languages

Go88%
TypeScript11%
Java1%

Modules by API surface

docs/docs/js/asciinema-player.min.js135 symbols
env.go82 symbols
envars/ops.go54 symbols
manifest/version.go39 symbols
state/state.go36 symbols
manifest/actions.go36 symbols
manifest/resolver.go34 symbols
manifest/package_selector.go31 symbols
ui/logger.go26 symbols
app/commands.go25 symbols
archive/archive.go24 symbols
ui/ui.go23 symbols

For agents

$ claude mcp add hermit \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact