Skill

project-analysis

Install
1
Install the plugin
$
npx claudepluginhub codenamev/claude_memory --plugin claude-memory

Want just this skill?

Add to a custom plugin, then install with one command.

Description

Knowledge about analyzing projects for tech stack, frameworks, tools, and conventions. Use when asked to understand or learn about a project's structure.

Tool Access

This skill uses the workspace's default tool permissions.

Skill Content

Analyze Project Skill

Analyze the current project and store facts about it in long-term memory.

Workflow

  1. Read key project files to understand the tech stack
  2. Extract facts about languages, frameworks, tools, conventions
  3. Store facts using memory.store_extraction

Files to Read

Read these files (if they exist) to understand the project:

Package/Dependency Files

  • Gemfile - Ruby dependencies (Rails, RSpec, etc.)
  • package.json - JavaScript/TypeScript dependencies
  • pyproject.toml or requirements.txt - Python dependencies
  • Cargo.toml - Rust dependencies
  • go.mod - Go dependencies
  • pom.xml or build.gradle - Java dependencies

Configuration Files

  • README.md - Project overview and setup instructions
  • tsconfig.json - TypeScript configuration
  • .eslintrc* or eslint.config.* - ESLint configuration
  • .prettierrc* - Prettier configuration
  • .rubocop.yml or .standard.yml - Ruby linting
  • Dockerfile - Container configuration
  • .github/workflows/*.yml - CI/CD configuration

Convention Files

  • .editorconfig - Editor configuration
  • CLAUDE.md or AGENTS.md - AI assistant instructions

What to Extract

Look for and store facts about:

CategoryPredicateExamples
Languagesuses_languageRuby, TypeScript, Python, Go, Rust
Frameworksuses_frameworkRails, React, Next.js, Django, FastAPI
Toolsuses_toolRSpec, Jest, ESLint, Prettier, Docker
Databasesuses_databasePostgreSQL, MySQL, Redis, MongoDB
Package Manageruses_package_managerBundler, npm, pnpm, Poetry, Cargo
CI/CDuses_ciGitHub Actions, CircleCI, GitLab CI
Conventionshas_conventionEditorConfig, 2-space indentation

Example Analysis

After reading Gemfile:

source 'https://rubygems.org'
gem 'rails', '~> 7.0'
gem 'pg'
gem 'rspec-rails', group: :test

Store these facts:

{
  "entities": [
    {"type": "language", "name": "Ruby"},
    {"type": "framework", "name": "Rails"},
    {"type": "database", "name": "PostgreSQL"},
    {"type": "tool", "name": "RSpec"}
  ],
  "facts": [
    {
      "subject": "repo",
      "predicate": "uses_language",
      "object": "Ruby",
      "quote": "Gemfile present",
      "strength": "stated"
    },
    {
      "subject": "repo",
      "predicate": "uses_framework",
      "object": "Rails",
      "quote": "gem 'rails', '~> 7.0'",
      "strength": "stated"
    },
    {
      "subject": "repo",
      "predicate": "uses_database",
      "object": "PostgreSQL",
      "quote": "gem 'pg'",
      "strength": "stated"
    },
    {
      "subject": "repo",
      "predicate": "uses_tool",
      "object": "RSpec",
      "quote": "gem 'rspec-rails'",
      "strength": "stated"
    },
    {
      "subject": "repo",
      "predicate": "uses_package_manager",
      "object": "Bundler",
      "quote": "Gemfile present",
      "strength": "stated"
    }
  ]
}

Best Practices

  1. Check what exists first: Use memory.recall with broad query like "uses" to see existing facts
  2. Don't duplicate: Skip facts that are already stored
  3. Include quotes: Reference the specific line or file where you found the information
  4. Use stated strength: For explicit declarations in config files
  5. Be selective: Only store durable, useful facts—not every dependency

Scope

  • Use scope_hint: "project" for project-specific facts (default)
  • Use scope_hint: "global" for user preferences found in global config files
Stats
Stars14
Forks1
Last CommitJan 20, 2026
Actions

Similar Skills

cache-components

Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.

138.4k