Skip to content

Job It

job_it — G6 IT job agent.

Cluster: Job Agents | Type: component | MCP Tools: 29

Overview

Domain-specialist job agent for IT operations and infrastructure professionals. Deploys services, monitors system health, troubleshoots incidents, configures infrastructure-as-code, manages access controls, and analyses logs — providing a structured ITOps workflow within G6's safety-bounded, audit-trailed JobAgentBlock framework.

When to use:

  • Triaging production incidents by correlating logs, metrics, and recent deployment events
  • Deploying or scaling services in a cloud environment via structured task execution
  • Reviewing infrastructure configuration for security misconfigurations or drift
  • Analysing historical log data to surface recurring error patterns

Example:

from mvp.job_it import JobITBlock, JobITInput

block = JobITBlock()
result = block.infer(JobITInput(
    task="Diagnose the root cause of elevated 503 errors on the payments API from the last 2 hours of logs",
    context={"service": "payments-api", "environment": "prod", "log_source": "cloudwatch"},
))
# result.ok → True; result.value → JobITOutput with result, artifacts

Works well with: job_framework, job_engineer, job_manager

Production Behavior And Caveats

job_it is designed to be fast and deterministic on a clean MCP install. Optional LLM, debate, grounding, and web-search enrichment is off by default so ordinary tool calls do not block on unavailable model servers, network access, or paid APIs. Enable richer advisory output explicitly with G6_JOB_IT_OPTIONAL_ENRICHMENT=1 for LLM/debate paths and G6_JOB_IT_EXTERNAL_ENRICHMENT=1 for grounding/search paths; tune LLM latency with G6_JOB_IT_LLM_TIMEOUT_SECONDS.

Production integrations are best-effort. Prometheus, Grafana, Docker, and Kubernetes adapters degrade gracefully when they are not configured or reachable. Live Docker/Kubernetes deployment remains dry-run outside production unless explicitly configured for real execution.

RBAC is enforced for direct dispatch of operator/admin operations such as deployment, incident response, ticket management, access changes, and permission audits. The local MCP block seeds an internal first-run context so smoke tests and basic local workflows work immediately after install; production callers should pass real user context and roles.

benchmark_latency needs real measurements or latency_ms samples for a performance verdict. Without samples it returns an unknown tier with collection guidance rather than pretending to measure latency.

Security assessment is static and deterministic by default. It is useful for common CWE/OWASP/configuration issues, but it is not a replacement for full SAST/DAST, dependency scanning, change review, or human approval before production infrastructure changes.

Public API

JobITBlock(JobAgentBlock)

G6 IT job agent - MCP-delegated block.

Field Type Default
name str 'job_it'
sector SectorClassification field(default_factory=lambda: _SECTOR)
toolkit ToolkitSpec \| None field(default_factory=lambda: JOB_TOOLKITS.get('it'))
mcp_module str 'mvp.job_it.it_mcp.server'
agentic_planner object \| None None
capabilities ClassVar[set[type]] {Extensible, HumanLearnable, Collaborative, ProblemSolvable, KnowledgeGrounded, Memorable, AgentCommunicable, ExternallyAdaptable}

JobITInput(JobInput)

Input for the IT job agent.

JobITOutput(JobOutput)

Output from the IT job agent.

JobITMCPBlock(AIBlock[MCPJobITInput, MCPJobITOutput, dict])

29-op MCP block for the IT job agent.

Field Type Default
name str 'job_it_mcp'
state dict field(default_factory=dict)
db_path str ':memory:'
resource_bounds ResourceBounds field(default_factory=ResourceBounds)
usage ResourceUsage field(default_factory=ResourceUsage)

Methods:

infer(data: MCPJobITInput) -> Result[MCPJobITOutput]

MCPJobITInput(BaseModel)

Input to JobITMCPBlock - 29-op dispatch.

Field Type Default
op Literal['deploy_service', 'monitor_system', 'troubleshoot', 'configure_infra', 'manage_access', 'analyze_logs', 'evaluate_uptime', 'assess_security', 'benchmark_latency', 'audit_permissions', 'forecast_capacity', 'incident_response', 'create_proposal', 'review_deliverable', 'delegate_task', 'report_status', 'request_feedback', 'store_artifact', 'retrieve_artifact', 'list_artifacts', 'search_artifacts', 'archive', 'plan_sprint', 'track_progress', 'reflect_on_outcome', 'list_patterns', 'get_capabilities', 'info', 'manage_tickets'] required
task str ''
context dict[str, Any] Field(default_factory=dict)
parameters dict[str, Any] Field(default_factory=dict)
artifact_id str ''
query str ''

MCPJobITOutput(BaseModel)

Output from JobITMCPBlock.

Field Type Default
op str required
completion_state Literal['verified', 'qualified-draft', 'blocked-escalated'] 'qualified-draft'
result str ''
artifacts list[dict[str, Any]] Field(default_factory=list)
records list[dict[str, Any]] Field(default_factory=list)
message str ''
count int 0
found bool False
metadata dict[str, Any] Field(default_factory=dict)
degraded bool False
degradation_reason str \| None None

ITStore(JobStore)

SQLite store for the IT job agent.

Constructor:

Parameter Type Default
db_path str ':memory:'

Methods:

record_metric(service_name: str, metric_name: str, value: float) -> str

Store a single metric snapshot.

get_metric_history(service_name: str, metric_name: str, limit: int = 100) -> list[dict]

Retrieve recent snapshots for a (service, metric) pair.

get_all_metrics_for_service(service_name: str, limit: int = 200) -> list[dict]

Retrieve all recent metric snapshots for a given service.

record_deployment(service_name: str, version: str, strategy: str, deploy_status: str, rollback_available: bool, previous_version: str, checks_passed: list, checks_failed: list) -> str

Persist a deployment event to deployment_history.

get_deployment_history(service_name: str, limit: int = 20) -> list[dict]

Retrieve deployment history for a service, most recent first.

Functions

assemble_review_text(output: Any) -> str

Collect the reviewable free text from a JobITOutput (duck-typed).

assess_it_output(output: Any, qa_block: Any | None = None, generate: Any | None = None) -> GroundedRunResult

Run grounded four-valued QA over an IT output.

MCP Tools

Operation Source
deploy_service it_mcp
monitor_system it_mcp
troubleshoot it_mcp
configure_infra it_mcp
manage_access it_mcp
analyze_logs it_mcp
evaluate_uptime it_mcp
assess_security it_mcp
benchmark_latency it_mcp
audit_permissions it_mcp
forecast_capacity it_mcp
incident_response it_mcp
create_proposal it_mcp
review_deliverable it_mcp
delegate_task it_mcp
report_status it_mcp
request_feedback it_mcp
store_artifact it_mcp
retrieve_artifact it_mcp
list_artifacts it_mcp
search_artifacts it_mcp
archive it_mcp
plan_sprint it_mcp
track_progress it_mcp
reflect_on_outcome it_mcp
list_patterns it_mcp
get_capabilities it_mcp
info it_mcp
manage_tickets it_mcp