-
Notifications
You must be signed in to change notification settings - Fork 4
Closed
Description
currently this structure tool gives this output:
$ contextinator structure --repo-url https://github.com/startHackHQ/contextinator
INFO - 📥 Cloning https://github.com/startHackHQ/contextinator...
INFO - Repository cloned to /tmp/contextinator_qxdd3fxf
INFO - Analyzing structure: contextinator_qxdd3fxf
contextinator_qxdd3fxf/
└── contextinator_qxdd3fxf/
├── docs/
│ ├── 0banner.png
│ └── banner.webp
├── src/
│ └── contextinator/
│ ├── chunking/
│ │ ├── __init__.py
│ │ ├── ast_parser.py
│ │ ├── ast_visualizer.py
│ │ ├── chunk_service.py
│ │ ├── file_discovery.py
│ │ ├── node_collector.py
│ │ ├── notebook_parser.py
│ │ └── splitter.py
│ ├── config/
│ │ ├── __init__.py
│ │ └── settings.py
│ ├── embedding/
│ │ ├── __init__.py
│ │ └── embedding_service.py
│ ├── ingestion/
│ │ ├── __init__.py
│ │ └── async_service.py
│ ├── tools/
│ │ ├── __init__.py
│ │ ├── cat_file.py
│ │ ├── grep_search.py
│ │ ├── repo_structure.py
│ │ ├── semantic_search.py
│ │ └── symbol_search.py
│ ├── utils/
│ │ ├── __init__.py
│ │ ├── exceptions.py
│ │ ├── hash_utils.py
│ │ ├── logger.py
│ │ ├── progress.py
│ │ ├── repo_utils.py
│ │ ├── rich_help.py
│ │ ├── token_counter.py
│ │ └── toon_encoder.py
│ ├── vectorstore/
│ │ ├── __init__.py
│ │ ├── async_chroma.py
│ │ └── chroma_store.py
│ ├── __init__.py
│ ├── __main__.py
│ └── cli.py
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── MANIFEST.in
├── README.md
├── USAGE.md
├── docker-compose.yml
├── pyproject.toml
└── uv.lock
but cat tool requires this in the folder structure:
$ contextinator cat "src/contextinator/chunking/ast_parser.py" -c starthackHQ_Contextinator
File: src/contextinator/chunking/ast_parser.py
================================================================================
from pathlib import Path
import uuid
from typing import Any, Dict, List, Optional, TYPE_CHECKING
from ..config import SUPPORTED_EXTENSIONS
from ..utils.logger import logger
from tree_sitter import Language, Parser
import tree_sitter_bash
import tree_sitter_c
import tree_sitter_c_sharp
import tree_sitter_cpp
import tree_sitter_go
import tree_sitter_java
import tree_sitter_javascript
import tree_sitter_json
import tree_sitter_kotlin
import tree_sitter_lua
import tree_sitter_markdown
import tree_sitter_php
import tree_sitter_python
import tree_sitter_rust
import tree_sitter_solidity
...
if we try with the same inputs as provided by the structure tool then it gives us an error:
need to remove this :
contextinator_qxdd3fxf/
└── contextinator_qxdd3fxf/
so new structure looks something like this:
├── docs/
│ ├── 0banner.png
│ └── banner.webp
├── src/
│ └── contextinator/
│ ├── chunking/
│ │ ├── __init__.py
│ │ ├── ast_parser.py
│ │ ├── ast_visualizer.py
│ │ ├── chunk_service.py
│ │ ├── file_discovery.py
│ │ ├── node_collector.py
│ │ ├── notebook_parser.py
│ │ └── splitter.py
│ ├── config/
│ │ ├── __init__.py
│ │ └── settings.py
│ ├── embedding/
│ │ ├── __init__.py
│ │ └── embedding_service.py
│ ├── ingestion/
│ │ ├── __init__.py
│ │ └── async_service.py
│ ├── tools/
│ │ ├── __init__.py
│ │ ├── cat_file.py
│ │ ├── grep_search.py
│ │ ├── repo_structure.py
│ │ ├── semantic_search.py
│ │ └── symbol_search.py
│ ├── utils/
│ │ ├── __init__.py
│ │ ├── exceptions.py
│ │ ├── hash_utils.py
│ │ ├── logger.py
│ │ ├── progress.py
│ │ ├── repo_utils.py
│ │ ├── rich_help.py
│ │ ├── token_counter.py
│ │ └── toon_encoder.py
│ ├── vectorstore/
│ │ ├── __init__.py
│ │ ├── async_chroma.py
│ │ └── chroma_store.py
│ ├── __init__.py
│ ├── __main__.py
│ └── cli.py
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── MANIFEST.in
├── README.md
├── USAGE.md
├── docker-compose.yml
├── pyproject.toml
└── uv.lock
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels