RepoPilot

google / python-fire

Search google/python-fire

GitHub

Code

How google/python-fire is laid out, and where to start for common changes.

There is no import map for this report yet.

Where to start reading

  1. Repository root
  2. Repository root
  3. Likely public API
  4. Likely public API
  5. Likely start-up file
  6. Suggested starting pointAI
  7. Suggested starting pointAI
  8. Suggested starting pointAI

Find files for a task

AI

Add support for a new Python object type (e.g., custom class)

  • Update fire/inspectutils.py to add introspection logic for the new type
  • Add parsing/routing rules in fire/core.py to handle the type in the routing chain
  • Add type conversion logic in fire/value_types.py if needed for argument mapping
  • Write integration tests in fire/core_test.py to verify routing behavior

Enhance help text and documentation generation

  • Add docstring parsing rules in fire/docstrings.py for new docstring formats
  • Update fire/helptext.py to format and display the new metadata
  • Test with fire/helptext_test.py to verify output

Add a new command-line argument type or parsing behavior

  • Define type recognition and conversion in fire/value_types.py
  • Update fire/parser.py to recognize and handle the new syntax
  • Add test cases in fire/parser_test.py to validate parsing

Customize behavior for specific functions or classes

  • Use decorators from fire/decorators.py to annotate functions with Fire directives
  • Add metadata extraction in fire/custom_descriptions.py to read decorator values
  • Integrate with fire/core.py routing logic to apply customizations

Change the public API

Trace runtime behavior

Add or update tests

Change build or automation

RepoPilot lists up to 500 files, so a file missing here may still exist.

  • Files marked “likely” are guessed from their names.

Code quality and hotspots

Largest source files

  • Branch points17 per file on average
  • Code issues1 error, 39 warnings
  • Largest file995 lines
  • Hotspot load0 high-risk files

Static checks on the 15 largest source files.

Tests, CI and tooling

  • CIGitHub Actions1 workflow
  • Tests25 test filesPytest · 0.69 test files per source file (file count, not coverage)
  • Dependency updatesDependabot

Test folders: fire · examples/widget · examples/cipher

Hotspots

Files that change often and branch heavily, highest first. Branch points count if, loop, case, catch, ternary, && and || in the file.