Skip to content

feat: implement actual logic for dummy commands#451

Closed
SHAURYASANYAL3 wants to merge 55 commits into
sreerevanth:mainfrom
SHAURYASANYAL3:feat/implement-dummy-commands
Closed

feat: implement actual logic for dummy commands#451
SHAURYASANYAL3 wants to merge 55 commits into
sreerevanth:mainfrom
SHAURYASANYAL3:feat/implement-dummy-commands

Conversation

@SHAURYASANYAL3

@SHAURYASANYAL3 SHAURYASANYAL3 commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

Description

This pull request transforms all previously stubbed (dummy) CLI commands in \�gentwatch/cli/main.py\ into fully functional implementations.

Detailed Changes:

  • **\�udit**: Replaced the static success message with a comprehensive security audit. It now loads the session events, processes tool calls through the \RiskScorer, and surfaces high-risk operations (score >= 0.5) to the console.
  • **
    eplay-session**: Upgraded to use \RollbackEngine. It now physically rewinds the session up to the specified step so it can be effectively resumed.
  • **\swarm**: Now reads a swarm configuration file dynamically. It parses the configured agents and their respective models, providing authentic orchestration logging over the Event Bus.
  • **\cost-predict**: Implemented a dynamic token estimator based on input task length, returning realistic cost approximations rather than a fixed range.
  • **\shield**: Configured persistence. Instead of just printing a status message, it now writes the selected shield mode (low, medium, high) into ~/.agentwatch/config.json.
  • **\doctor**: Overhauled the static table. It now dynamically checks for the presence of \�gentwatch.db, validates the \AGENTWATCH_API_KEY\ environment variable, and runs a subprocess to verify the local Docker daemon status.
  • **\clean**: Added real file cleanup logic for the .agentwatch_cache\ directory, calculating and printing the exact volume of storage successfully freed in MB.
  • **\export-csv**: Transformed into a functional CSV exporter. It reads local JSON session logs and extracts timestamps, event types, statuses, and tool calls into the requested output CSV file.
  • **\compare-models**: Hooked up to the \ModelRouter\ from \�gentwatch.cost.router. It observes latency and confidence metrics and pulls an actual \health_snapshot\ for comparison.
  • **\share**: Replaced the hardcoded URL with an authentic \httpx\ POST request to the API's /share\ endpoint, cleanly falling back if the API is offline.

Impact

These updates ensure that users relying on the CLI get real, actionable metrics and actual state changes, significantly improving the tool's reliability and usability for production environments.

pavsoss and others added 30 commits June 14, 2026 23:13
Changes made:

- Added 	ests/test_cli_export.py to add tests for the missing export CLI functionality.

- Fixed a static type error (Undefined name Enum) in �gentwatch/cli/main.py.

- Fixed the @app.command() decorator for export to correctly use @session_app.command(name='export') so it correctly shows up under the session Typer group.

- Moved __version__ import to the top of �gentwatch/cli/main.py to fix E402 lint error.

- Added a new --version option using a callback function in the main AgentWatch Typer app to easily check the CLI version.
SHAURYASANYAL3 and others added 24 commits June 17, 2026 20:49
@coderabbitai

coderabbitai Bot commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

@SHAURYASANYAL3, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 12 minutes and 42 seconds. Learn how PR review limits work.

Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file).

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits.

🚦 How do rate limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan refill rate.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, the refill rate gradually slows as usage increases. The highest same-day bursts are limited more strictly.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 90542a40-5b13-4488-941c-ce60ccee4a4c

📥 Commits

Reviewing files that changed from the base of the PR and between c1080e9 and 9e12398.

📒 Files selected for processing (49)
  • .tmp_issue1.md
  • .tmp_issue2.md
  • .tmp_issue332_body.txt
  • .tmp_issue333_body.txt
  • .tmp_issue335_body.txt
  • .tmp_issue336_body.txt
  • add_animations.py
  • agentwatch-session-missing-session.json
  • agentwatch/cli/main.py
  • agentwatch/cli/ui.py
  • agentwatch/governance/compliance_reporter.py
  • bandit-baseline.json
  • bandit_report.json
  • benchmarks/bench_overhead.py
  • cook_animations.py
  • create_god_issues.py
  • create_mi_issues.py
  • create_paid_issues.py
  • current_bandit.json
  • enrich_issues.py
  • export_cmd.txt
  • fix_issue_titles.py
  • fix_tests.py
  • inject_payload.py
  • issue1.md
  • issue2.md
  • main_branch_main.py
  • main_copy.py
  • merge_lint_issues.py
  • merge_security_issues.py
  • merge_type_issues.py
  • my_issues.json
  • my_issues_utf8.json
  • new_bandit_report.json
  • parse_bandit.py
  • pr_body.md
  • push_issues.py
  • push_pylint_issues.py
  • pylint_report.json
  • pytest_output.txt
  • refactor_cli.py
  • resolve_export.py
  • resolve_merge.py
  • ruff_bugs.txt
  • tests/test_api_safety_check.py
  • tests/test_cli_compare.py
  • tests/test_cli_export.py
  • tests/test_redteam.py
  • tests/test_rollback.py
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions

github-actions Bot commented Jun 21, 2026

Copy link
Copy Markdown

🧪 PR Test Results

Check Result
Tests (pytest tests/) ✅ success
Lint (ruff check .) ❌ failure
Coverage (agentwatch) 72.44%

Python 3.12 · commit 9e12398

@SHAURYASANYAL3 SHAURYASANYAL3 changed the title Feat/implement dummy commands feat: implement actual logic for dummy commands Jun 21, 2026
@SHAURYASANYAL3

Copy link
Copy Markdown
Contributor Author

Splitting into smaller PRs and removing garbage files.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants