Documentation
¶
Overview ¶
Package slackconnector bridges Slack events into rocketclaw.
Index ¶
- type Connector
- func (c *Connector) AskUserQuestion(ctx context.Context, req *events.AskUserQuestionRequest) (events.TextConversationTarget, error)
- func (c *Connector) CleanupPendingReplyPlaceholder(ctx context.Context, replyTarget *events.SlackReplyTarget)
- func (c *Connector) DeleteUserQuestion(ctx context.Context, target events.TextConversationTarget) error
- func (c *Connector) SendCronjobChannelThread(ctx context.Context, channelID, relativePath, agent, ranAt, text string, ...) error
- func (c *Connector) SendDiscordRelay(ctx context.Context, text string) (*events.SlackReplyTarget, error)
- func (c *Connector) SendExternalMCPRelay(ctx context.Context, channelID, text string, ...) (*events.SlackReplyTarget, error)
- func (c *Connector) SendExternalMCPThreadRelay(ctx context.Context, channelID, threadTS, text string, ...) (*events.SlackReplyTarget, error)
- func (c *Connector) SendResponse(ctx context.Context, msg *events.OutboundMessage) error
- func (c *Connector) SendWebVoiceRelay(ctx context.Context, text string) (*events.SlackReplyTarget, error)
- func (c *Connector) Start(ctx context.Context) error
- func (c *Connector) Stop(context.Context) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Connector ¶
type Connector struct {
// contains filtered or unexported fields
}
Connector bridges Slack DM events into the shared rocketclaw bus.
func New ¶
func New(cfg *config.SlackConfig, bus *events.Bus, emergencySafeWords []string, threadAgents config.ThreadAgents, threadRouter harnessbridge.PrimaryTextRouter, oneOffCronjobs primarytext.OneOffCronjobRunner, interruptMainTurn func() *events.InboundMessage, answerQuestion func(context.Context, string, events.AskUserQuestionAnswer) bool, answerQuestionText func(context.Context, events.Source, events.TextConversationTarget, string) bool, logger *slog.Logger) *Connector
New constructs a Slack connector.
func (*Connector) AskUserQuestion ¶ added in v0.0.12
func (c *Connector) AskUserQuestion(ctx context.Context, req *events.AskUserQuestionRequest) (events.TextConversationTarget, error)
AskUserQuestion posts one in-message Slack question.
func (*Connector) CleanupPendingReplyPlaceholder ¶
func (c *Connector) CleanupPendingReplyPlaceholder(ctx context.Context, replyTarget *events.SlackReplyTarget)
CleanupPendingReplyPlaceholder removes a relay placeholder that no response turn claimed.
func (*Connector) DeleteUserQuestion ¶ added in v0.0.12
func (c *Connector) DeleteUserQuestion(ctx context.Context, target events.TextConversationTarget) error
DeleteUserQuestion deletes one Slack question message.
func (*Connector) SendCronjobChannelThread ¶
func (c *Connector) SendCronjobChannelThread(ctx context.Context, channelID, relativePath, agent, ranAt, text string, attachments []events.OutboundAttachment) error
SendCronjobChannelThread posts one scheduled cronjob result in a new Slack channel thread.
func (*Connector) SendDiscordRelay ¶
func (c *Connector) SendDiscordRelay(ctx context.Context, text string) (*events.SlackReplyTarget, error)
SendDiscordRelay mirrors a Discord utterance into Slack before the main session handles it.
func (*Connector) SendExternalMCPRelay ¶
func (c *Connector) SendExternalMCPRelay(ctx context.Context, channelID, text string, attachments []events.OutboundAttachment) (*events.SlackReplyTarget, error)
SendExternalMCPRelay mirrors an external MCP prompt into Slack before the main session handles it.
func (*Connector) SendExternalMCPThreadRelay ¶
func (c *Connector) SendExternalMCPThreadRelay(ctx context.Context, channelID, threadTS, text string, attachments []events.OutboundAttachment) (*events.SlackReplyTarget, error)
SendExternalMCPThreadRelay mirrors an external MCP follow-up into an existing Slack thread.
func (*Connector) SendResponse ¶
SendResponse posts or updates a streamed response message in Slack.
func (*Connector) SendWebVoiceRelay ¶
func (c *Connector) SendWebVoiceRelay(ctx context.Context, text string) (*events.SlackReplyTarget, error)
SendWebVoiceRelay mirrors a browser web voice utterance into Slack before the main session handles it.