Agent Reach Channel Tier System: How Zero-Config, Key-Required, and Complex Setup Channels Work
Agent Reach uses a three-tier classification system (0, 1, 2) where tier 0 channels require no setup, while tier 1 and tier 2 channels both require user configuration before becoming usable.
The Agent Reach framework organizes its platform integrations into distinct channel tier categories based on setup complexity. This tier system helps developers and users quickly understand which channels work immediately versus those needing configuration steps.
Understanding the Three Channel Tiers
The tier system is defined in agent_reach/channels/base.py, where the base Channel class documents the tier attribute:
tier: int = 0 # 0=zero-config, 1=needs free key, 2=needs setup
Tier 0: Zero-Config Channels
Tier 0 channels operate without any manual configuration. As long as the underlying tool or dependency is installed, these channels function immediately.
- No API keys required
- No login flows
- No environment variables
The Web (catch-all) channel demonstrates this pattern in agent_reach/channels/web.py with tier = 0.
Tier 1: Free Key or Login Required
Tier 1 channels need lightweight, typically free setup steps:
- Browser login flows
- Free API key imports
- Cookie exports from existing sessions
Twitter/X and Reddit both implement tier = 1 in their respective channel files. Twitter requires either login credentials or exported cookies, while Reddit mandates an authenticated session.
Tier 2: Complex Setup Required
Tier 2 channels demand more involved configuration:
- Custom back-end installations
- Environment variable configuration
- Manual credential file placement
LinkedIn uses tier = 2 in agent_reach/channels/linkedin.py, reflecting its need for additional services beyond simple authentication.
Which Tiers Require Setup?
| Tier | Setup Required? | Configuration Level |
|---|---|---|
| 0 | No | None — works immediately |
| 1 | Yes | Free key, login, or cookie import |
| 2 | Yes | Custom back-ends, environment variables, credential files |
Any channel with tier 1 or tier 2 will prompt users to complete configuration before the channel becomes usable.
Checking Channel Status Programmatically
The agent_reach/doctor.py module provides utilities to audit all channels and their tier-based readiness:
from agent_reach.doctor import check_all, format_report
from agent_reach.config import Config
config = Config() # loads user config (if any)
results = check_all(config) # collect channel health info
print(format_report(results)) # human‑readable summary
On a fresh install, tier 0 channels appear under ✅ 装好即用 (ready to use), while tier 1 and tier 2 channels list under 可选渠道(已安装) (optional channels installed) only after completing their required setup steps.
Channel Implementation Examples
Tier 1: Twitter/X Channel
# From agent_reach/channels/twitter.py
class TwitterChannel(Channel):
tier = 1 # Requires login or cookie export
name = "twitter"
Tier 1: Reddit Channel
# From agent_reach/channels/reddit.py
class RedditChannel(Channel):
tier = 1 # Must be logged in
name = "reddit"
Tier 2: LinkedIn Channel
# From agent_reach/channels/linkedin.py
class LinkedInChannel(Channel):
tier = 2 # Needs additional setup
name = "linkedin"
Tier 0: Web Channel
# From agent_reach/channels/web.py
class WebChannel(Channel):
tier = 0 # No extra setup
name = "web"
Summary
- Agent Reach channel tier system classifies integrations by setup complexity using values 0, 1, and 2
- Tier 0 channels need zero configuration and work immediately after dependency installation
- Tier 1 channels require setup through free keys, browser logins, or cookie imports
- Tier 2 channels demand complex configuration including custom back-ends and environment setup
- Tiers 1 and 2 both require user action before the channel becomes operational
- The base implementation resides in
agent_reach/channels/base.pywith specific channel definitions in their respective files
Frequently Asked Questions
What is the difference between tier 1 and tier 2 in Agent Reach?
Tier 1 requires lightweight configuration like free API keys or browser logins that don't cost money. Tier 2 demands more substantial setup such as installing additional services, configuring environment variables, or managing credential files manually. Both tiers block channel usage until configuration completes.
How do I check which channels need setup in my Agent Reach installation?
Run the diagnostic utilities from agent_reach/doctor.py. The check_all() function evaluates every channel against your current configuration and format_report() produces a human-readable summary showing which tier 1 and tier 2 channels remain unconfigured.
Can I use a tier 2 channel without installing extra back-ends?
No. According to the source code in channels like agent_reach/channels/linkedin.py, tier 2 channels explicitly depend on infrastructure beyond authentication. The framework enforces this by checking prerequisites during channel initialization and reporting unmet dependencies in diagnostic output.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →