# Android ❤ Gemini CLI - tech debt detection Code Maat skill

DevFeed: [Android ❤ Gemini CLI - tech debt detection Code Maat skill](<https://devfeed.tech/articles/android-gemini-cli-tech-debt-detection-code-maat-skill-32033.md>)

Original publisher: [Read original article](<https://www.maiatoday.net/p/android-%EF%B8%8F-gemini-cli-tech-debt-detection-code-maat-skill/>)

Published: 2026-03-08T00:00:00Z

Content type: tutorial

Language: en

Sources: [maiatoday](<https://devfeed.tech/sources/maiatoday.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Tech Debt](<https://devfeed.tech/topics/tech-debt.md>), [Agent Skill](<https://devfeed.tech/topics/agent-skill.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Code](<https://devfeed.tech/topics/code.md>), [Git](<https://devfeed.tech/topics/git.md>), [Android Studio](<https://devfeed.tech/topics/android-studio.md>)

Tags: [adb](<https://devfeed.tech/tags/adb.md>), [agent-skill](<https://devfeed.tech/tags/agent-skill.md>), [ai](<https://devfeed.tech/tags/ai.md>), [android](<https://devfeed.tech/tags/android.md>), [cli](<https://devfeed.tech/tags/cli.md>), [code](<https://devfeed.tech/tags/code.md>), [code-maat](<https://devfeed.tech/tags/code-maat.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [gemini](<https://devfeed.tech/tags/gemini.md>), [gemini-cli](<https://devfeed.tech/tags/gemini-cli.md>), [git](<https://devfeed.tech/tags/git.md>), [tech-debt](<https://devfeed.tech/tags/tech-debt.md>)

## AI overview

This tutorial explores using Gemini CLI and an agent skill with Code Maat to identify technical-debt hotspots in the Habitica Android codebase. It describes using Git history to analyze file churn and logical coupling, and compares the approach with the Gemini Agent in Android Studio.

## Source excerpt

Introduction What AI tools work for building Android apps? I am exploring some variations. In this post I will look at Gemini CLI, tech debt detection with a skill using Code Maat and how this compares with the Agent of Gemini in Android Studio. I am not starting with a new project. What if you have an existing codebase and you want to find the best place to tackle some tech debt that will make a difference for everyone. The sample codebase is the Habitica app, which had its first commit in 2015. Rather than poking at the code in a random or an "intuitive" way or asking the AI questions, let's look at a more deterministic way to answer this question. Or rather, let's teach the agent to use some scripts to answer this question. The benefit of packaging this functionality in a skill is that you can create this specialisation and script usage in a skill that will be loaded lazily only when you need it. The theory - Code as Crime scene Adam Tornhill wrote a book, Your Code as a Crime Scene, that uses your git history and applies forensic science to figure out where the hotspots, logical coupling, churn and more can be found in your code base. He has a java tool called Code Maat that you can use to analyse this information. The problem is, it is a bit finicky to setup and run and I can never remember all the command line parameters for git or for the tool. The theory TLDR is if you can see which large files change often or which files always change together, you can see which parts of your code are brittle or are coupled. The added benefit is that this analysis is language neutral. So if you build an agent skill for this, it can be used on any codebase. Creating the Code Maat Skill What do we need the link to Code Maat optionally download the code-maat standalone jar and put it in ~/tools/code-maat.jar to speed up the first run Gemini CLI + authentication and API key if you have it the skill-creator skill - this is part of the Gemini CLI install the Habitica Android app