Behavior & Autonomy

How much rope to give Cygent — the autonomy presets, the individual behaviors, and when each one fits.

Overview

How autonomous Cygent is — whether it waits for you on everything or runs on its own judgment — is a configuration dial, not a philosophy. Different teams want different answers, and the right answer usually changes as trust builds up.

Configure this under Automation → Behavior on the agent. Settings apply globally, with per-project overrides for anything you want to tune finer.

The four presets

Four named presets cover most teams. Pick the one that matches where you are today; change it later.

PresetResponds to messagesPR commentsAuto-reviewAuto-issue creation
RestrictedOnly when @mentionedOffOffOff
BalancedYesOnWith confirmationOff
AutonomousYes + smart interjectionOnAutomaticOn (above threshold)
CustomConfigurableConfigurableConfigurableConfigurable

Who should pick what

  • Restricted — evaluating the agent's judgment. First-week calibration, or using Cygent as a purely human-driven tool (IDE + Slack on demand).
  • Balanced — the recommended default. Covers ~80% of real usage. The one friction point is the confirmation prompt on PR reviews if you're merging 20 PRs a day.
  • Autonomous — where most mature teams land after a few weeks. Every PR reviewed instantly, Critical/High findings auto-file issues, Cygent interjects in Slack when it has context.
  • Custom — the escape hatch. Common shape: "Autonomous for PR reviews, manual for issue creation," or "Balanced everywhere except the main monorepo, which is fully autonomous."

Individual behaviors

When you pick Custom — or when you want to know what each preset actually does under the hood — these are the toggles.

BehaviorValuesWhat it controls
Respond to all messagesOn / OffOff: only replies when @mentioned. On: reads every channel message, replies when useful.
Post PR commentsOn / OffOff: review results only in chat. On: findings post as inline GitHub comments.
Auto-review PRsDisabled / With confirmation / AutomaticDisabled: manual only. Confirmation: pings channel, waits for thumbs-up. Automatic: reviews every PR instantly.
Auto-create issuesOn / OffOff: findings stay in Cygent. On: findings above threshold create GitHub or Linear issues.
Severity thresholdCritical / High / Medium / Low / InfoThe minimum severity that triggers auto-issue creation. Most teams start at High.
Finding syncOn / OffWhen a linked issue closes, the Cygent finding updates. Off by default.

Smart interjection

The most interesting autonomous behavior — and the one worth understanding before you turn it on — is smart interjection. When enabled, Cygent reads the channels it's in and will speak up, unprompted, when it has context that is genuinely useful.

The canonical example: two engineers are debating collateral math in a Slack channel. One says "let's follow the Aave V3 approach for liquidations, we're on Arbitrum so L2 considerations matter." Nobody has @mentioned Cygent.

Cygent replies anyway — not with a quip, but with something like:

Noting this context. I'll add a rule for future audits on this repo: liquidation math must match Aave V3's implementation, and I'll check for Arbitrum-specific concerns (sequencer uptime oracle, L2 gas patterns) on any relevant code paths.

That's smart interjection working well. The bot heard a protocol-defining decision in a channel, carried it into persistent memory, and turned it into audit rules that will fire on future reviews.

What keeps it from being annoying is an engagement score — Cygent only chimes in when its confidence that it has something useful to add crosses a threshold. If you find it's too chatty, move back to Balanced or disable the behavior in Custom.

⚠️

Smart interjection means Cygent is reading channel messages to decide whether to respond. If you have channels with content you'd prefer Cygent not read — private HR conversations, for instance — don't add Cygent to those channels.

Per-project overrides

Agent-level settings are defaults. Each project can override them — useful when one repo deserves different rules than another.

Common patterns:

  • Production monorepo runs Autonomous, because every PR needs a review the moment it lands. Experimental repos run Balanced, because half the PRs are scratch work that doesn't warrant a full review.
  • A repo with PR-time-sensitive contributors (e.g. external contractors) runs Autonomous with issue auto-creation on. A repo used by the internal team runs With Confirmation.
  • A research sandbox repo runs Restricted — the team uses it for exploratory work and doesn't want the bot generating findings.

Project overrides always win over agent-level settings. You set them on the project's page under the Automation or Settings section.

Review channel routing

The default review channel is where audit results and PR review summaries land. Set it once at the agent level — #cygent-reviews or whatever your team uses — and override per-project if a specific repo's output should go somewhere else.

Routing works for Slack, Discord, and Telegram. The channel you pick needs the Cygent bot present — Cygent will tell you if it can't post.

Calibrating over time

Most teams move through the presets in roughly this order:

TimeframePresetWhy
Week 1Restricted or BalancedSee what the bot does before trusting autonomy
Weeks 2–4BalancedTrust the review quality, want auto-reviews with a confirmation gate
Month 2+AutonomousReviews on every PR, auto-issues above High, channel participation
💡

If something goes wrong — a bad auto-review, a noisy issue creation — don't nuke the preset. Use a project override to dial back that one repo while keeping the rest of your setup intact.