From the top of my head without actually trying this out, a theoretical abstract answer:
In rhythm, you have beat/pulse positions within a meter. In harmony, you have scale degree positions in a scale. If you can select beat positions for rhythms, do the same for pitches.
Why not make chromatic alterations to the scale. There are N positions that can be altered, pick a permutation.
To keep things anchored to the "one", put a big kick drum on beat one, and to anchor harmony, a pedal point bass on the root pitch. Unless you want to have a chord progression where the bass follows chords. And you dont't have to explicate beat one in a rhythm-for-dummies style either. :)
For constructing chords (that you don't have to explicate by playing simultaneously, you can imply them by arpeggiating or emphasizing on stronger beats in a single-voice line), in addition to using permutations of scale degree combinations, try to find all other dimensions or aspects of chords, and permute those aspects. Let's take a description of a chord
- tertian harmony (based on stacking thirds, as opposed to fourths or fifths)
- major scale
- closed-voicing (as opposed to open voicing - there are many possible voicings which you could permute)
- a seventh chord (four notes as a stack-of-thirds)
- root on scale degree 2
- bass on scale degree 1 (or thinking in terms of inversions, it's a third inversion)
- the fifth of the chord is diminished (making scale degree 6 flat)
There you have a whole bunch of things about chords you can permute.
Any set of attributes you can use to describe it, you can permute. Of course, these aren't necessarily completely orthogonal, i.e. independent. If you select quartal harmony, then the rest of things may not apply. If you choose to select the bass note freely from a scale without thinking of inversions, it may change the conventional tertian-harmony interpretation of the chord's type. For example, C major with F in the bass, really nice chord but you can't get it systematically as an inversion of any stack of thirds, except as a kludge-around "Fmaj9 omit 3". Or if you choose to alter chord tones instead of scale degrees, then chords will dictate scale degree alterations. But you could choose to do it the other way around as well.
Just some abstract ideas.
___ Edit. How would you use that to create progressions?
Decide on a harmonic rhythm. Or make one as a slow rhythmic permutation. For example, one harmonic change per bar, or sometimes two per bar.
For each harmonic change, pick one or more attributes to change. Or stick to just one, for example chord root. Or chord root and inversion.
If you want to see the whole thing as one single permutation of something, consider your harmony progression as a machine with inputs and outputs. INPUT -> GENERATOR -> OUTPUT. You map all attributes and decisions the GENERATOR makes to something in INPUT, and INPUT consists of exactly X bits of data. It may be a lot of bits and permutations, but you can decide to lock most of it and permute only over a subset of input space. Just like you're already doing with rhythms - I suppose you have decided on e.g. locked bar and pulse lengths, and permute within a partial space only. So you don't have 128th note patterns of 8 bars or anything.