Documentation
¶
Index ¶
- Constants
- func InstallChatPrompt(repo, context string) string
- type AgentRunFunc
- type CommandRunner
- type RealRunner
- type Service
- func (s *Service) CheckOrgSecretsExist(orgName string) (bool, error)
- func (s *Service) GetCurrentRepo() (string, error)
- func (s *Service) InstallWorkflow(ctx context.Context, opts agentdomain.InstallWorkflowOptions) (string, error)
- func (s *Service) IsOrgRepo(repo string) (bool, error)
- func (s *Service) SetAgentRunner(run AgentRunFunc)
- func (s *Service) SetOrgSecret(orgName, name, value string) error
Constants ¶
const ( InferActionVersion = "v0.49.2" CheckoutActionVersion = "v7.0.1" AppTokenActionVersion = "v3.2.0" UploadArtifactActionVersion = "v7.0.1" DefaultWorkflowModel = "ollama_cloud/deepseek-v4-flash:preview" )
Version pins and defaults for generated GitHub workflows.
const InstallBranch = "infer/install-github-action"
InstallBranch is the fixed head branch for agent-driven workflow installs. Keeping it stable means a re-install pushes onto the same branch and updates the already-open PR instead of opening a duplicate.
const InstallSkill = "opentask"
InstallSkill is the catalog skill carrying the infer-action workflow authoring guide and its bundled examples. Mentioning it as "/<name>" in the agent prompt activates it (downloaded from the skills catalog on demand).
Variables ¶
This section is empty.
Functions ¶
func InstallChatPrompt ¶ added in v0.182.0
InstallChatPrompt builds the install task submitted as a regular chat message - the single canonical prompt for installing the OpenTask workflow, used by the /install-opentask shortcut and (via that shortcut) the browser extension's Install tab. repo may be empty (the agent detects the current checkout's repo); context carries extra user/workflow configuration.
Types ¶
type AgentRunFunc ¶ added in v0.182.0
type AgentRunFunc func(ctx context.Context, opts agentheadless.Options) (agentheadless.Result, error)
AgentRunFunc matches agentheadless.Run so tests can stub the LLM step.
type CommandRunner ¶
type CommandRunner interface {
Run(ctx context.Context, name string, args ...string) ([]byte, error)
}
CommandRunner is an injectable interface for running subprocesses. Tests supply a fake runner so no real gh/git calls are needed.
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service implements agentdomain.GitHubSetupService.
func NewService ¶
func NewService(runner CommandRunner) *Service
NewService creates a new Service with the given runner.
func (*Service) CheckOrgSecretsExist ¶
CheckOrgSecretsExist checks whether INFER_APP_ID and INFER_APP_PRIVATE_KEY secrets exist for the given org.
func (*Service) GetCurrentRepo ¶
GetCurrentRepo returns the current GitHub repository name with owner.
func (*Service) InstallWorkflow ¶ added in v0.182.0
func (s *Service) InstallWorkflow(ctx context.Context, opts agentdomain.InstallWorkflowOptions) (string, error)
InstallWorkflow clones the target repo, has an LLM agent create or update the infer-action workflow inside the checkout (preserving repo-specific customizations), then commits, pushes and opens - or updates - the install PR. It returns the PR URL.
func (*Service) IsOrgRepo ¶
IsOrgRepo checks whether the given repo belongs to a GitHub organization.
func (*Service) SetAgentRunner ¶ added in v0.182.0
func (s *Service) SetAgentRunner(run AgentRunFunc)
SetAgentRunner overrides the agent runner (tests). Nil restores the default.
func (*Service) SetOrgSecret ¶
SetOrgSecret sets a GitHub organization-level secret.