@paparats/shared
v0.2.22
Published
Shared utilities for Paparats MCP - path validation, gitignore filtering, language-aware exclude patterns
Maintainers
Readme
@paparats/shared
Shared utilities for Paparats MCP - path validation, gitignore filtering, and language-aware exclude patterns used by the server and CLI packages.
Install
npm install @paparats/sharedAPI
Path Validation
import { validateIndexingPaths } from '@paparats/shared';
// Rejects absolute paths and path traversal in indexing config
const errors = validateIndexingPaths(['src', '../etc/passwd']);
// errors: ['Path traversal not allowed: ../etc/passwd']Gitignore Filtering
import { createGitignoreFilter, filterFilesByGitignore } from '@paparats/shared';
// Per-file check
const filter = createGitignoreFilter('/path/to/repo');
if (filter('node_modules/foo.js')) {
// file is gitignored
}
// Bulk filter
const included = filterFilesByGitignore('/path/to/repo', allFiles);Exclude Patterns
import {
normalizeExcludePatterns,
getDefaultExcludeForLanguages,
LANGUAGE_EXCLUDE_DEFAULTS,
COMMON_EXCLUDE,
DEFAULT_EXCLUDE_BARE,
} from '@paparats/shared';
// Bare dir names become glob patterns: 'node_modules' -> '**/node_modules/**'
const patterns = normalizeExcludePatterns(['node_modules', 'dist']);
// Get default excludes for specific languages
const excludes = getDefaultExcludeForLanguages(['typescript', 'python']);Part of Paparats MCP
This package provides shared utilities used by:
- @paparats/cli - CLI tool for project indexing and setup
- @paparats/server - MCP server with semantic code search (Docker image)
License
MIT