Monica

agent
Guvenlik Denetimi
Gecti
Health Gecti
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Community trust — 10 GitHub stars
Code Gecti
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
  • Permissions — No dangerous permissions requested
Purpose
This project provides a modular .NET infrastructure library for building AI-assisted C# backends. It offers composable modules, built-in dashboards, and pre-packaged agent skills to help developers maintain observable, well-structured codebases as they scale.

Security Assessment
Overall Risk: Low. The automated code scan reviewed 12 files and found no dangerous patterns, hardcoded secrets, or requests for elevated permissions. The tool acts as a framework for organizing backend code rather than an standalone agent that executes arbitrary shell commands. While it does include a JobScheduler capable of running background tasks, this is standard backend behavior that requires the developer to explicitly implement and configure the code being executed.

Quality Assessment
Quality: Good, but early stage. The repository is under active development, with its most recent push occurring today. It uses the permissive and standard MIT license, and the codebase is properly documented with both a dedicated docs site and an example repository. However, the project is quite new and has a low community footprint, currently sitting at 10 GitHub stars. The developer explicitly notes that the project is in rapid iteration and "not production-ready yet."

Verdict
Use with caution — safe for experimentation and local development, but hold off on integrating it into any critical or production systems until the codebase stabilizes.
SUMMARY

Modular .NET infrastructure for C# AI-era backends: ProjectUnits, composable modules, built-in dashboards, and agent skills.

README.md

Monica

Monica Logo

Unit Tests NuGet License Documentation Ask DeepWiki

English | 简体中文

Modular .NET Infrastructure for C# AI-era backends.
Monica combines typed DDD ProjectUnits, composable infrastructure modules, built-in dashboards, and bundled agent skills so AI-assisted backend work stays observable as it grows.

Development status: internal development, rapid iteration, and breaking changes are still expected. It is not production-ready yet.

Quick Links

Why Monica

  • AI can produce code quickly, but without a shared spec the result becomes brittle and hard to observe as the system grows.
  • Monica turns infrastructure into the spec: every module registers through the same Mo.Add*() pattern, and every backend feature is expressed as typed ProjectUnits instead of ad hoc glue.
  • The bundled skills under .claude/skills/ and .agents/skills/ teach agents the Monica way before they write code.

Demo

The one-minute demo walks through the operator-facing parts of Monica:

  • JobScheduler health dashboard, recent activity, job definitions, and manual execution.
  • Cron expression editing without wiring a custom admin page by hand.
  • ModuleSystem performance and dependency views for the running host.
  • Runtime configuration inspection and theme switching.

https://github.com/user-attachments/assets/250e1e5f-0a78-4b8b-b832-756d682a01bd

JobScheduler in Code

using Microsoft.Extensions.Logging;
using Monica.JobScheduler.Abstractions;
using Monica.JobScheduler.Annotations;
using Monica.Modules;

Mo.AddJobScheduler()
    .UseInMemoryMetadataRepository()
    .UseSchedulerScope("local-dev")
    .UseInMemoryProvider();

[JobConfig(
    JobName = "Heartbeat",
    Description = "Writes a heartbeat every five minutes.",
    CronSchedule = "0 */5 * * * *")]
public sealed class HeartbeatJob(ILogger<HeartbeatJob> logger) : RecurringJob
{
    public override Task ExecuteAsync(CancellationToken cancellationToken)
    {
        logger.LogInformation("Heartbeat job ran.");
        return Task.CompletedTask;
    }
}
  • Recurring and triggered jobs share one scheduling model.
  • The dashboard lives at /job-scheduler.
  • Concurrency guards, zombie detection, and persistence options are built in.
  • Add Mo.AddJobSchedulerUI() when you want the browser dashboard and job detail views.

Dashboards, Themes, and i18n

Monica ships multiple operational Blazor UIs on top of Monica.UI: JobScheduler, Configuration, DependencyInjection, ProjectUnits, ModuleSystem, AI, and more. The UI layer shares the same theme contract, several swappable theme variants, and shipped en-US + zh-CN localization resources.

Bundled Agent Skills

The repo includes ready-to-use skill packs in .claude/skills/ and .agents/skills/.

  • Framework entry points: monica-framework, monica-development, monica-architecture, monica-ui-development, monica-ui-design, monica-ui-audit, monica-docs-authoring, monica-requirement-design, monica-unit-testing, monica-ui-bridge-debug
  • Application entry points: monica-application, monica-application-microservice, monica-application-modular-monolith, monica-application-project-unit-development
  • Supporting workflows: code-simplifier, playwright-cli, subagent-progress-report, third-party-source-catalog

Module Catalog

Monica is organized as many small composable modules rather than a few large packages.

  • Core infrastructure: Core, Tool, DependencyInjection, ResultEnvelope, Mediator, JsonSerialization, Localization
  • DDD and application flow: ProjectUnits, AutoController, AutoModel, Repository, UnitOfWork
  • Background and ops: JobScheduler, Configuration, Logging, ObservableInstance, HostedService, ServiceDiscovery, Locker, Resilience
  • Communication and integration: EventBus, SignalR, DataChannel, Dapr, Markdown
  • AI and analysis: AI, RAG, Framework, Framework.UI, AI.UI, JobScheduler.UI, Configuration.UI, DependencyInjection.UI
  • Platform utilities: WebApi, Validation, Office, Profiling, DevOps, K8S, Git, FileOps, Utilities

See the full module index in the docs site for the current authoritative list.

Architecture at a Glance

Module Pattern

  • Module{Name}Option: public configuration surface
  • Module{Name}Guide: fluent follow-up configuration
  • Module{Name}: the module implementation
  • Module{Name}BuilderExtensions: the Mo.Add*() entry point

ProjectUnit Pattern

Typed DDD building blocks that define what AI is allowed to write: ApplicationService, RequestDto, DomainService, Entity, Repository, DomainEvent, DomainEventHandler, LocalEventHandler, Configuration, RecurringJob, TriggeredJob.

ProjectUnit guidance lives in monica-application-project-unit-development and in the Monica.Docs concept pages that explain the same vocabulary in context.

Technology Stack

Contributing

  1. Fork the repository.
  2. Create a branch.
  3. Commit your changes.
  4. Open a pull request.

Acknowledgements

A small subset of Monica modules was informed by the ABP Framework, which is licensed under LGPL-3.0. Any directly adapted code keeps its original notices and license terms. Monica is an independent project and is not affiliated with ABP.

License

MIT License. See LICENSE.txt.

Contact

Yorumlar (0)

Sonuc bulunamadi