{"id":23885637,"url":"https://github.com/jagedn/resolution-analyzer","last_synced_at":"2026-06-17T22:31:58.930Z","repository":{"id":270099556,"uuid":"909330596","full_name":"jagedn/resolution-analyzer","owner":"jagedn","description":"A micronaut command line to analyze incidents and their resolution","archived":false,"fork":false,"pushed_at":"2024-12-28T14:26:46.000Z","size":52,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-23T03:28:21.826Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Groovy","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jagedn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-28T11:34:03.000Z","updated_at":"2024-12-28T14:26:49.000Z","dependencies_parsed_at":"2024-12-28T12:37:45.415Z","dependency_job_id":null,"html_url":"https://github.com/jagedn/resolution-analyzer","commit_stats":null,"previous_names":["jagedn/resolution-analyzer"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jagedn/resolution-analyzer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jagedn%2Fresolution-analyzer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jagedn%2Fresolution-analyzer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jagedn%2Fresolution-analyzer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jagedn%2Fresolution-analyzer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jagedn","download_url":"https://codeload.github.com/jagedn/resolution-analyzer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jagedn%2Fresolution-analyzer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34468766,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-17T02:00:05.408Z","response_time":127,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-04T05:53:03.806Z","updated_at":"2026-06-17T22:31:58.911Z","avatar_url":"https://github.com/jagedn.png","language":"Groovy","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Incident resolution analyzer\n\n... with Micronaut + AI\n\n## Requirements\n\n- Google Cloud Application\n- Docker (in case you want to run in local Ollama)\n\n## Idea\n\nSay you are managing the Customer Complain department of your company\n\nSay you have a bunch of internal emails (Gmail in this example) about a lot of complaining of customers, discussing\nbetween different departments every one. \n\nSay you want to analyze all of them and decide if a complaining can be considered as closed or decide what's the next steps to run.\n\n## \"Solution\"\n\nWe'll create a command line micronaut application and, after providing some keywords (for example, the name of the\ncustomer), we'll retrieve all the relation conversations.\nWe will run a query to our AI agent to analyze the conversation, so it can give us some tips about next steps.\n\nFinally, we'll store the answer into a database to future references\n\n## Requirements\n\nAs we'll use Groogle library to access our Gmail account, we'll need a `client_secret.json` file with the credentials\n(see Groogle for more information)\n\nIf you don't have (or don't want to use) OpenAI, you can use an Ollama docker image so the assistant will run completely \ninto your systems. I've provided a docker-compose in the `ollama` folder\n\n## Build\n\n`./gradlew build`\n\n## OpenAI\n\nConfigure `resources/application-openai.properties` with your personal token\n\n# Ollama\n\nin the `ollama` folder run `docker compose up -d`\n\nOnce the image is ready open a shell: \n\n`docker compose exec ollama bash`\n\nAnd download the model:\n\n`ollama pull gemma2:9b`  // Or the model you prefer\n\n## Check\n\n` ./gradlew run -Pcliente=\"Jorge Aguilera\" -Penvs=ollama`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjagedn%2Fresolution-analyzer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjagedn%2Fresolution-analyzer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjagedn%2Fresolution-analyzer/lists"}