MCPcopy
hub / github.com/gitpod-io/gitpod

github.com/gitpod-io/gitpod @release-2022.11.4-gha.25239 sqlite

repository ↗ · DeepWiki ↗ · release release-2022.11.4-gha.25239 ↗
24,590 symbols 59,273 edges 2,038 files 5,564 documented · 23%
README

Gitpod Logo

<strong>Gitpod</strong>

Always ready-to-code.

Gitpod ready-to-code Werft.dev - Gitpod CI Discord

Gitpod is an open-source Kubernetes application for ready-to-code cloud development environments that spins up fresh, automated dev environments for each task, in the cloud, in seconds. It enables you to describe your dev environment as code and start instant, remote and cloud development environments directly from your browser or your Desktop IDE.

Tightly integrated with GitLab, GitHub, and Bitbucket, Gitpod automatically and continuously prebuilds dev environments for all your branches. As a result, team members can instantly start coding with fresh, ephemeral, and fully-compiled dev environments - no matter if you are building a new feature, want to fix a bug, or do a code review.

browser-vscode

Features

🏗 Dev environments as code - Gitpod applies lessons learned from infrastructure-as-code. Spinning up dev environments is easily repeatable and reproducible empowering you to automate, version-control, and share dev environments across your team.

⚡️ Prebuilt dev environments - Gitpod continuously prebuilds all your git branches similar to a CI server. Control how Gitpod pre-configures and initializes environments before you even start a workspace through init commands in your .gitpod.yml.

🐳 Integrated Docker build - Gitpod instantly starts a container in the cloud based on your Docker image. Tools that are required for your project are easy to install and configure.

👐 GitLab, GitHub, and Bitbucket integration - Gitpod seamlessly integrates into your workflow and works with all major git hosting platforms including GitHub, GitLab and Bitbucket.

👀 Integrated code reviews - with Gitpod you can do native code reviews on any PR/MR. No need to switch context anymore and clutter your local machine with your colleagues' PR/MR.

👯‍♀️ Collaboration - invite team members to your dev environment or snapshot any state of your dev environment to share it with your team asynchronously.

🛠 Professional & customizable developer experience - a Gitpod workspace gives you the same capabilities (yes, even root & docker) as your Linux machine - pre-configured and optimized for your individual development workflow. Install any VS Code extension with one click on a user and/or team level.

Learn more 👉

Gitpod is provided as a managed Saas version with a free subscription for open-source or a free self-hosted version. An enterprise license is available here.

Getting Started

You can start using Gitpod in one or more of the following ways:

  1. Quickstart using an Example Project or OSS Project
  2. Getting started with one of your existing projects
  3. Use a Prefixed URL
  4. Install Browser Extension
  5. Enable GitLab Integration

Documentation

All documentation can be found on https://www.gitpod.io/docs. For example, see Introduction and Getting Started sections. 📚

Also check out awesome-gitpod

Questions

For questions and support please use Discord. Join the conversation, and connect with other community members. 💬

You can also follow @gitpod for announcements and updates from our team.

Issues

The issue tracker is used for tracking bug reports and feature requests for the Gitpod open source project as well as planning current and future development efforts. 🗺️

You can upvote popular feature requests or create a new one.

Development Process

We work with quarterly roadmaps in autonomous product teams.

How do GitHub Issues get prioritized?

Most GitHub issues (except smaller or more urgent issues) relate to our current product roadmap items. Gitpod teams work against these roadmap items. Each Gitpod team has its own project board that follows a similar structure. You can find these project boards attached to the GitHub organization. Each team board has a "GroundWork" tab which shows current GitHub issues in progress. Each team project board also has an "inbox" where issues are sent for review by the team (and should be responded to within 48 hours). "Upvoting" by reacting to GitHub issues helps signal to Gitpod that issues are important to you. If you are unsure of the status of an issue, please comment and a Gitpodder should respond to you shortly. For any other questions, please utilize the Gitpod community.

Related Projects

During the development of Gitpod, we also developed some of our own infrastructure toolings to make development easier and more efficient. To this end, we've developed a number of open source projects including:

  1. Werft - A Kubernetes native CI system
  2. Leeway - A heavily caching build system
  3. Dazzle - An experimental Docker image builder
  4. OpenVSCode Server - Run the latest VS Code on a remote machine accessed through a browser

Code of Conduct

We want to create a welcoming environment for everyone who is interested in contributing to Gitpod or participating in discussions with the Gitpod community. This project has adopted the Contributor Covenant Code of Conduct, version 2.0.

Extension points exported contracts — how you extend this code

DockerRefResolver (Interface)
DockerRefResolver resolves a mutable Docker tag to its absolute digest form. For example: gitpod/workspace-full:latest b [8 …
components/image-builder-mk3/pkg/resolve/resolve.go
BucketNamer (Interface)
BucketNamer provides names for storage buckets [12 implementers]
components/content-service/pkg/storage/storage.go
ServedPortsObserver (Interface)
ServedPortsObserver observes the locally served ports and provides full updates whenever that list changes. [15 implementers]
components/supervisor/pkg/ports/served-ports.go
WorkspaceInfoProvider (Interface)
WorkspaceInfoProvider is an entity that is able to provide workspaces related information. [14 implementers]
components/ws-proxy/pkg/proxy/infoprovider.go
LayerSource (Interface)
LayerSource provides layers for a workspace image [6 implementers]
components/registry-facade/pkg/registry/layersource.go
ResourceLimiter (Interface)
ResourceLimiter implements a strategy to limit the resurce use of a workspace [5 implementers]
components/ws-daemon/pkg/cpulimit/cpulimit.go
TeamsServiceClient (Interface)
TeamsServiceClient is a client for the gitpod.experimental.v1.TeamsService service. [5 implementers]
components/public-api/go/experimental/v1/v1connect/teams.connect.go
ProcessClassifier (Interface)
ProcessClassifier matches a process against a set of criteria [5 implementers]
components/ee/agent-smith/pkg/classifier/classifier.go

Core symbols most depended-on inside this repo

Error
called by 777
components/ws-proxy/pkg/sshproxy/server.go
get
called by 361
components/server/src/auth/host-context-provider.ts
error
called by 356
components/gitpod-protocol/src/util/jaeger-client-types.ts
map
called by 329
components/ee/payment-endpoint/src/chargebee/subscription-mapper.ts
Call
called by 328
test/pkg/integration/integration.go
Close
called by 324
components/common-go/analytics/analytics.go
Info
called by 288
components/registry-facade/pkg/registry/manifest.go
cancel
called by 287
components/supervisor/frontend/src/ide/heart-beat.ts

Shape

Method 15,668
Function 4,060
Class 1,879
Struct 1,567
Interface 1,142
TypeAlias 137
FuncType 71
Enum 66

Languages

Go43%
TypeScript31%
Java26%

Modules by API surface

components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/Status.java1,365 symbols
components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/TerminalOuterClass.java1,304 symbols
components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/Notification.java797 symbols
components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/Token.java639 symbols
components/ide-metrics-api/java/src/main/java/io/gitpod/idemetrics/api/Idemetrics.java575 symbols
components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/Port.java513 symbols
components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/Info.java466 symbols
components/ws-manager-api/go/core.pb.go445 symbols
components/gitpod-protocol/go/gitpod-service.go230 symbols
components/supervisor-api/go/status.pb.go221 symbols
components/server/src/workspace/gitpod-server-impl.ts217 symbols
components/public-api/go/experimental/v1/workspaces.pb.go216 symbols

Dependencies from manifests, versioned

atomicgo.dev/cursorv0.1.1 · 1×
cloud.google.com/gov0.104.0 · 1×
cloud.google.com/go/computev1.7.0 · 1×
cloud.google.com/go/compute/metadatav0.2.1 · 1×
cloud.google.com/go/pubsubv1.25.1 · 1×
cloud.google.com/go/storagev1.27.0 · 1×
filippo.io/edwards25519v1.0.0-rc.1 · 1×
github.com/32leaves/belv1.0.1 · 1×
github.com/AdaLogics/go-fuzz-headersv0.0.0-2022070816332 · 1×
github.com/AndreasBriese/bbloomv0.0.0-2019082515265 · 1×

For agents

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

⬇ download graph artifact