maris-ai-master / tools /code /repo_editor.py
MarisUK's picture
Maris AI model sync
f440f03 verified
"""Repozitorija redaktors aģentam."""
from __future__ import annotations
import logging
from pathlib import Path
logger = logging.getLogger(__name__)
class RepoEditor:
"""Lasa un raksta failus repozitorijā."""
def __init__(self, base_path: str = ".") -> None:
self.base = Path(base_path).resolve()
def read_file(self, path: str) -> str:
"""Lasa faila saturu."""
full = self.base / path
return full.read_text(encoding="utf-8")
def write_file(self, path: str, content: str) -> None:
"""Raksta failu."""
full = self.base / path
full.parent.mkdir(parents=True, exist_ok=True)
full.write_text(content, encoding="utf-8")
logger.info("Uzrakstīts fails: %s", full)
def list_files(self, pattern: str = "**/*") -> list[str]:
"""Saraksta failus pēc pattern."""
return [str(p.relative_to(self.base)) for p in self.base.glob(pattern) if p.is_file()]